レッスン 1.2: 表の作成
SPUFI から SQL ステートメントを発行して、表や他のデータベース・オブジェクトを対話式に作成できます。 このレッスンでは、前のレッスンで照会したサンプル EMP 表と同じ形式で、同じデータが含まれる新しい表を作成します。 次のレッスンでは、元のサンプル・データに変更を加えることなく、作成した新しい表のデータを変更できます。
始める前に
Lesson 1.1: インタラクティブにデータを照会する。 レッスン 1.2 は、前のレッスンの学習内容を基盤としています。
プロシージャー
- DB2I を開き、サブシステム ID を設定し、 レッスン 1.1: 対話的にデータを照会する のステップ 1~5 の説明に従って、SPUFI で USER.SRCLIB.TUTORIAL (SQLTEXT ) データセットを開きます。
- データ・セットに前のレッスンのステートメントが含まれている場合、その前にハイフンを 2 つ追加してコメント化してください。
- SQL ステートメントを発行して、表を作成し、行をその表に追加します。
- 編集パネルで、CREATE TABLE ステートメントとINSERTステートメントを入力します。 これらのSQL文の構文とオプションの詳細については、「CREATE TABLE文」 および 「INSERT文」 を参照してください。例えば、以下のCREATE文は、お客様の認証IDの下にMY_EMPという名前のテーブルを作成します。このテーブルは、サンプルのDSN8C10.EMPテーブルと同じフォーマットで、同じデータを含んでいます。 以下の INSERT ステートメントは、MY_EMP 表に行を追加します。 サンプル・データベースのEMPテーブルのデータについては、 Employeeテーブル( DSN8C10.EMP )を参照してください。
File Edit Edit_Settings Menu Utilities Compilers Test Help EDIT USER.SRCLIB.TUTORIAL(SQLTEXT) - 01.25 Columns 00001 00072 Command ===> Scroll ===> PAGE ****** ***************************** Top of Data ****************************** 000100 000101 --SELECT * FROM DSN8C10.EMP; 000102 --SELECT EMPNO, SALARY + COMM AS TOTAL_SAL; 000103 --FROM DSN8C10.EMP 000104 --ORDER BY TOTAL_SAL; 000110 CREATE TABLE MY_EMP LIKE DSN8C10.EMP; 000200 INSERT INTO MY_EMP 000300 SELECT * FROM DSN8C10.EMP; 000400 000500 000600 ****** **************************** Bottom of Data **************************** F1=Help F2=Split F3=Exit F5=Rfind F6=Rchange F7=Up F8=Down F9=Swap F10=Left F11=Right F12=Cancel - ステートメントを発行するため PF3 を押し、その後に Enter を押します。表が作成され、行が挿入されます。以下の結果が表示されます。
Menu Utilities Compilers Help BROWSE TUTOR01.MYOUTPUT Line 00000000 Col 001 080 Command ===> Scroll ===> PAGE ********************************* Top of Data ********************************** ---------+---------+---------+---------+---------+---------+---------+---------+ 00010023 --SELECT * FROM DSN8C10.EMP 00010125 --SELECT EMPNO, SALARY + COMM AS TOTAL_SAL 00010225 --FROM DSN8C10.EMP 00010326 --ORDER BY TOTAL_SAL 00010426 CREATE TABLE MY_EMP LIKE DSN8C10.EMP; 00011027 ---------+---------+---------+---------+---------+---------+---------+---------+ DSNE616I STATEMENT EXECUTION WAS SUCCESSFUL, SQLCODE IS 0 ---------+---------+---------+---------+---------+---------+---------+---------+ INSERT INTO MY_EMP 00020027 SELECT * FROM DSN8C10.EMP; 00030027 ---------+---------+---------+---------+---------+---------+---------+---------+ DSNE615I NUMBER OF ROWS AFFECTED IS 42 DSNE616I STATEMENT EXECUTION WAS SUCCESSFUL, SQLCODE IS 0 ---------+---------+---------+---------+---------+---------+---------+---------+ F1=Help F2=Split F3=Exit F5=Rfind F7=Up F8=Down F9=Swap F10=Left F11=Right F12=Cancel覚えていますか? レッスン 1.1 では、ステートメントに関する問題のトラブルシューティングに、発行されたメッセージやコードを使用できることを学びました。
- 編集パネルで、CREATE TABLE ステートメントとINSERTステートメントを入力します。 これらのSQL文の構文とオプションの詳細については、「CREATE TABLE文」 および 「INSERT文」 を参照してください。
- PF3 を押すと、 SPUFI に戻ります。SPUFIから連続したSQLステートメントを発行する際に従うパターンの例については、 前回のレッスンStep 9のヒントを参照してください。
- SELECT ステートメントを発行し、表が作成されたこと、および挿入したデータが含まれることを確認します。例えば、以下の照会により、作成した表のすべての行が戻ります。
Menu Utilities Compilers Help BROWSE TUTOR01.MYOUTPUT Line 00000000 Col 001 080 Command ===> Scroll ===> PAGE ********************************* Top of Data ********************************** ---------+---------+---------+---------+---------+---------+---------+---------+ 00010023 --SELECT * FROM DSN8C10.EMP 00010125 --SELECT EMPNO, SALARY + COMM AS TOTAL_SAL 00010225 --FROM DSN8C10.EMP 00010326 --ORDER BY TOTAL_SAL 00010426 -- CREATE TABLE MY_EMP LIKE DSN8C10.EMP; 00011029 -- INSERT INTO MY_EMP 00020029 -- SELECT * FROM DSN8C10.EMP; 00030029 00040026 SELECT * FROM MY_EMP; 00050028 ---------+---------+---------+---------+---------+---------+---------+---------+ EMPNO FIRSTNME MIDINIT LASTNAME WORKDEPT PHONENO HIREDATE J ---------+---------+---------+---------+---------+---------+---------+---------+ 000010 CHRISTINE I HAAS A00 3978 1965-01-01 P 000020 MICHAEL L THOMPSON B01 3476 1973-10-10 M F1=Help F2=Split F3=Exit F5=Rfind F7=Up F8=Down F9=Swap F10=Left F11=Right F12=Cancel - PF3、Enter の順に押して、「編集」パネルに戻ります。
結果
このレッスンでは、SPUFI で以下のタスクを対話式に実行する方法について学習しました。
- 表を作成する
- 1 つの表から別の表に行を挿入する
- 新しい表が作成され、データが含まれていることを確認する
次の作業
次のレッスンでは、MY_EMP 表のデータを変更します。