行を増やすにはどうするの
早速データを入れて見たいは
SQLでデータを入れるにはどうするのかしら?
表に行を追加するにはINSERT句を使います。
構文は次のようになるよ。
INSERT INTO [表名] VALUES(DATA1,DATA2…DATAn)
nは列の個数だけ
INSERT INTO [表名] [(列名1,列名2..列名n)]
VALUES(DATA1,DATA2…DATAn)
nは列の個数だけ
最後に紹介したSQLはDEFAULT値を設定した列に使うとその列を指定しなくてもよ
くなるので便利だよ。
実際にSYUKEIYAKU表に次のデータを入れてみましょう
|
ID |
NAME |
ADD_DATE |
|
1 |
MATUZAKA USITAROU |
20070420 |
|
2 |
BUTAE SATUMA |
20060520 |
最
INSERT INTO SYUKEIYAKU
VALUES(1,’MATUZAKA USITAROU’,’20070420’)
nは列の個数だけ
初の構文では
2番目の構文では
INSERT INTO SYUKEIYAKU
(ID,NAME,ADD_DATA)
VALUES(2,’KUROBUTA SATUMA’,’20060520’)
となります。
実際にSQLPlusで実効してみると以下のようになります。
VALUESと列名があってないとエラーになります。(ORA-00193)
VALUESの型変換が無効な場合もエラーになります(ORA-01722)
行を指定しない場合でデータが足りない場合もエラーになります。(ORA-00947)
列の型ってどんな型があるの
列の型が出てきたけど、具体的に
列の型にはどんな型があるのかしら?
ざっと紹介すると、こんな感じだよ。
またあとで詳しく紹介するね。
|
型名 |
説明 |
|
CHAR(size) |
固定長文字データです。sizeバイトまで格納できます。格納されたデータがsizeまで満たないと空白を埋めます。 |
|
VARCHAR(size) |
可変長の文字データです。sizeバイトまで入力できます。 |
|
LONG |
4GBまで格納できる文字列です。制約や整合性に問題があります。 |
|
CLOB |
4GBまで格納できる文字列です。 |
|
NUMBER(p,s) |
整数p桁で小数点s桁の数値が格納できます。 |
|
DATE |
日付を格納することができます。 格納できる範囲は 4桁年、月、日、時、分,秒 です。 |
|
RAW(s) |
sバイトのバイナリデータを格納できます。 |
|
LONG RAW |
2Gバイトのバイナリデータを格納できます。制約や整合性に問題があります。 |
|
CLOB |
2Gバイトのバイナリデータを格納できます。 |
|
TIMESTAMP |
時刻を1秒未満の単位として格納します。 |
|
TIMESTAMP WITH TIME ZONE |
現地時刻と国際標準時の差を時間もしくは分で格納します。 |
|
TIMESTAMP WITH LOCAL TIME ZONE |
データベースの現地時刻と国際標準時の差を時間もしくは分で格納します。 |
|
INTRVAL YEAR TO MONTH |
月単位の期間を格納します。 |
|
INTERVAL DAY TO SECOND |
秒単位の期間を格納します。 |