The Leading Educational Resource for IT Professionals

SQL 101: Tools of the Trade – Old, Reliable STRSQL, Part 2

by Victoria Mack November 16, 2016 0 Comments

Ready for more tips on STRSQL? Even if you’re familiar with this old and venerable tool, this article might show you something new.


The previous article started to discuss STRSQL and stopped short of explaining a very important set of features. So I’ll just pick up where I left off: I’m going to explain what Option 1 of the Interactive SQL Session Services screen, reachable by pressing F13 on the main screen, can be used for. This option brings up the Session Attributes screen, depicted in Figure 1.


 111616RafaelFigure1 dmu

Figure 1: The Change Session Attributes Screen


In this screen, the most relevant options are the following:

  • Statement processing—Set to *RUN by default, this option also allows you to validate the statement without running it, with option *VLD. If you use *SYN, the database engine will check the statement’s syntax, according to DB2 Universal Database for i5/OS syntax rules. A syntax check verifies that the statement is constructed according to the SQL rules for that statement and its parameters. If the statement refers to columns, a validity check verifies that all statement elements referred to (schema, table, view, column, library, file, or field) actually exist.
  • SELECT output—This is probably the most flexible option, because it allows you to redirect the output to the printer by typing a 2 or, much more interesting, redirect the output to a database file. Why is this interesting? It can save you a lot of time. Instead of creating really long and complex multi-table SELECT statements, you can start with the largest table, run a SELECT statement over it (having redirected the output to a file beforehand), and then use that smaller, more manageable table to continue drilling down in your tables. Repeat this “change file name, then run a new SELECT” process until you get to the final result.
  • Naming convention—In the native naming convention you’re used to, represented here by the *SYS option, a slash character (/) is used to separate the library from the file name. However, this is not standard SQL; SQL’s cross-platform notation uses a period character (.) as a separator. If you want to use this notation, change this session attribute to *SQL instead. As you’ll see later, one of the other SQL tools available also requires this notation.

I intentionally left out the Commitment Control attribute because that’s something I won’t talk about in this series. It’s not a complicated feature, but it makes more sense to learn about it when you have a little more experience with SQL. (It’s best to be patient and not try to learn everything at once so you don’t get overwhelmed or frustrated.)


When you type a valid SELECT statement and press Enter to execute it, the results screen is shown, assuming that you didn’t change the “SELECT output” attribute default value. In this screen, you can use the usual PageUp and PageDown keys to navigate, but you can also take advantage of the Position to line and Shift to column fields at the top row to jump around. For instance, typing “+ 100” in the Position to line field and pressing Enter will take you down 100 lines in the result list, assuming you have more than 100 lines of results. Similarly, typing “+ 10” in the Shift to column field will take you 10 columns to the right in the results. In both fields, using the minus sign (-) followed by a number will have the opposite effect of using plus (+). It’s also possible to type a number in these fields. For instance, typing “50” in the Position to line field and pressing Enter sends you to the 50th line of the results.


You can also use F19 to move to the left and F20 to move to the right instead the Shift to column field. If the result lines don’t fit on the screen, which will certainly happen when you work with long character columns or a long SELECT clause composed of a lot of columns and/or expressions, you can use F21 to “freeze panes” similar to what you’d find in MS Excel. F3 or F12 will send you back to the SQL command line. Once you’re done experimenting with STRSQL, use F3 to exit, making sure you select the appropriate exit option for the session history, as shown in Figure 2. As I said before, saving your history might spare you the time you’d waste retyping those awfully long statements you’ll surely write at one point or another.


 111616RafaelFigure2 dmu

Figure 2: The Interactive SQL Exit Screen


STRSQL is a nice tool and it will do for the daily tasks, but the restrictions imposed by the green-screen environment limit your efficiency in more complex tasks, such as creating tables or triggers. The next tool on my list, i Navigator’s Run SQL Scripts tool, will be of great help once you get the hang of it.


That’s all for the STRSQL discussion, so feel free to add to it by sharing your own tips and experience in the Comments sections below.


About the Author: Rafael Victoria-Pereira

Victoria Mack
Victoria Mack


Also in MC Press Articles

Gifts to Give Yourself This Holiday

by Victoria Mack December 21, 2016 0 Comments

It’s the holiday season, and everyone is in the gift-giving mood. Be sure you don’t forget to invest in your company and career.

brian mayWritten by Brian May

It’s a special time of the year. Family gatherings for the holidays, football season, and time in the woods all make this one of my favorite seasons. The month of December is also unique for IT departments. December is certainly not business as usual for most of us.

It’s time for budgets. That may mean requesting budget items for next year or spending surplus budget before the end of the year. It’s often when project work slows down a bit as end users, and IT staff alike, take time away from the office. It’s a time when stress is often at its lowest, and it’s just easier to get some things done.

Continue Reading →

SQL 101: Tools of the Trade - i Navigator’s Run SQL Scripts

by Victoria Mack December 21, 2016 0 Comments

A more “modern” alternative to STRSQL, discussed in the last two articles, is the i Navigator’s Run SQL Scripts tool. Let’s explore it together, shall we?

rafael victoria preiraWritten by Rafael Victória-Pereira

While STRSQL is a green-screen tool, Run SQL Scripts is part of the i Navigator package. You can access it by choosing the Run SQL Scripts option, either from the bottom-right pane of the i Navigator window after you’ve chosen the Databases tree node from the right panel, as shown in Figure 1, or by right-clicking the database name and choosing the respective option.

Continue Reading →

Energy, Vibe, and Atmosphere

by Victoria Mack December 19, 2016 0 Comments

This is IT. We must be willing to bend.

steve pitcherWritten by Steve Pitcher

With a growing emphasis in talking about the state of the current IBM i workforce, also known as the “IBM i skills shortage,” it behooves oneself to keep the noise level to a minimum in order to make even-keeled decisions. In short, don’t necessarily believe all the hype you read.

I’d like to think of this as an extension piece to “The IBM i Skills Shortage Myth.” It’s not necessarily a “part two” per se, but more of a story that runs parallel. I’ve been trying to write this for about six weeks, but some things are just hard to put into words, especially when they involve how you feel as opposed to what you know. Besides, writing what you know is easy. Writing what you feel leaves room for reader interpretation, so you have to be more careful.

Continue Reading →