コメント |
[[基本構文]]
@DIV
CREATE TABLE 表名
[ ( 列リスト) ]
AS
( サブクエリー )
@END
@C:green(
列リストを指定せずに、サブクエリーのSELECT 句で * のみを指定すると、同じフォーマットの
表が作成され、SELECT 文の結果となる行が全て追加されます)
※ その際、制約は NOT NULL 制約しかコピーされません
@DIV
create table 社員
as
select * from 社員マスタ
@END
@C:green(
空の表を作成したい場合は、副問合せの WHERE句の条件が一致しないようにします)
@DIV
create table 社員
as
select * from 社員マスタ @c:red(where 1 = 2)
@END
@C:green(
列名リストを指定すると制約やデフォルト値を設定可能です)
@DIV
create table 社員 (
社員コード
,氏名
,フリガナ
,支給額 @c:red(default 0)
,primary key( 社員コード )
)
as
select
社員コード
,氏名
,フリガナ
,NVL(給与,0)+NVL(手当,0)
from
社員マスタ
@END
@HTML
<TABLE class="LboxTable" border="0" cellspacing="1" bgcolor="#000000">
<TR class="LboxTr"><TH class="LboxTh" bgcolor="#C0C0C0" nowrap></TH><TH class="LboxTh" bgcolor="#C0C0C0" nowrap>列名</TH><TH class="LboxTh" bgcolor="#C0C0C0" nowrap>型値</TH><TH class="LboxTh" bgcolor="#C0C0C0" nowrap>型定数</TH><TH class="LboxTh" bgcolor="#C0C0C0" nowrap>型名</TH><TH class="LboxTh" bgcolor="#C0C0C0" nowrap>最大桁</TH><TH class="LboxTh" bgcolor="#C0C0C0" nowrap>精度</TH><TH class="LboxTh" bgcolor="#C0C0C0" nowrap>スケール</TH><TH class="LboxTh" bgcolor="#C0C0C0" nowrap>NULL</TH><TH class="LboxTh" bgcolor="#C0C0C0" nowrap>主キー</TH><TH class="LboxTh" bgcolor="#C0C0C0" nowrap>デフォルト</TH></TR>
<TR class="LboxTr"><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>1</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>社員コード</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>129</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>adChar</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>VARCHAR2</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>4</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap></TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap></TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>N</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>1</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap></TD></TR>
<TR class="LboxTr"><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>2</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>氏名</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>129</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>adChar</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>VARCHAR2</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>50</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap></TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap></TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap></TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap></TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap></TD></TR>
<TR class="LboxTr"><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>3</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>フリガナ</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>129</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>adChar</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>VARCHAR2</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>50</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap></TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap></TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap></TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap></TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap></TD></TR>
<TR class="LboxTr"><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>4</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>支給額</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>131</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>adNumeric</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>NUMBER</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap></TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>15</TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap></TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap></TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap></TD><TD class="LboxTd" bgcolor="#FFFFFF" nowrap>0</TD></TR>
</TABLE>
@HEND
デフォルト値を持つ列は、insert 文で列リストで指定されない場合に
その値が設定されます。
↓支給額は、0 がセットされる
@DIV
insert into "社員" (
"社員コード"
,"氏名"
,"フリガナ"
)
values(
'0051'
,'浦岡 友也'
,'ウラオカ トモヤ'
)
@END
また、SQL 内で、その値をあらわすキーワードとして使用可能です
@DIV
update "社員" set
"氏名" = '浦岡 友也'
,"フリガナ" = 'ウラオカ トモヤ'
,"支給額" = @C:red(default)
where
"社員コード" = '0051'
@END
|