「SQL」の編集履歴(バックアップ)一覧はこちら

SQL - (2005/11/16 (水) 19:23:32) の最新版との変更点

追加された行は緑色になります。

削除された行は赤色になります。

*Contents #contents ---- *SQL構文 **テーブル名を変更する。 -rename > rename 変更前テーブル名 to 変更後テーブル名 **設定されている制約を参照する。 > select a.table_name, b.column_name, a.constraint_name, a.constraint_type > from user_constraints a, user_cons_columns b > where a.table_name = b.table_name (+) > and a.constraint_name = b.constraint_name (+) **PL/SQL パッケージの一覧を参照する。 > select object_name from user_objects > where object_type = 'PACKAGE' object_typeには INDEX, LOB, PACKAGE, PACKAGE BODY, PROCEDURE, SEQUENCE, TABLEがある。 **PL/SQLパッケージソースの復元 > select text from user_source > where name = 必要なパッケージ名 > and type = 'PACKAGE BODY' > order by line -spoolに出力するがよい。 -typeには INDEX, LOB, PACKAGE, PACKAGE BODY, PROCEDURE, SEQUENCE, TABLEがある。 **INSERT...SELECT文の構文 > insert into table_name1 (col_name1, col_name2...) select col_mame1, col_name2... from table_name2 where id = 1; -values句は不要。 -カラムの型は同じでないといけない。 **alter table ***項目追加 > alter table テーブル名 add (項目名 型); ***項目長変更 > alter table テーブル名 modify (項目名 型); -型の変更、長さを変更できる。 *トランザクション管理 **セーブポイント > savepoint セーブポイント名 -commitはトランザクション全てコミットされる。 -rollbackはトランザクション全て破棄される。 -同一トランザクション内で同じ名前のセーブポイントを指定した場合、上書きされる。 > rollback to savepoint セーブポイント名; -セーブポイント名を設定した以後のトランザクションが破棄される。 -セーブポイント以前のトランザクションは生き。 -セーブポイント名が未設定のセーブポイントの場合、エラーとなる。 ---- *なんかあればどうぞ #comment(vsize=2,nsize=20,size=40)
*Contents #contents ---- *[[SQL/DDL]] *SQL **JOIN ***INNER JOIN > select * from hoge h inner join fuga f on (h.id = f.id) 以下と等価。 > select * from hoge h, fuga f where h.id = f.id ***OUTER JOIN > select * from hoge h left outer join fuga f on (h.id = f.id) 以下と等価。 > select * from fuga f right outer join hoge h on (f.id = h.id) > select * from hoge h, fuga f where h.id = f.id(+) [left|right]は省略可能。(省略時はleft) **設定されている制約を参照する。 > select a.table_name, b.column_name, a.constraint_name, a.constraint_type > from user_constraints a, user_cons_columns b > where a.table_name = b.table_name (+) > and a.constraint_name = b.constraint_name (+) **SEQUENCEを参照する。 > SELECT * FROM USER_SEQUENCES **PL/SQL パッケージの一覧を参照する。 > select object_name from user_objects > where object_type = 'PACKAGE' object_typeには INDEX, LOB, PACKAGE, PACKAGE BODY, PROCEDURE, SEQUENCE, TABLE, SYNONYM がある。 **PL/SQLパッケージソースの復元 > select text from user_source > where name = 必要なパッケージ名 > and type = 'PACKAGE BODY' > order by line -spoolに出力するがよい。 -typeには INDEX, LOB, PACKAGE, PACKAGE BODY, PROCEDURE, SEQUENCE, TABLEがある。 **View のソースを復元 > select text from user_views where view_name='ビュー名'; -set long 4000; などして、longの表示可能サイズを拡大する。 **INSERT...SELECT文の構文 > insert into table_name1 (col_name1, col_name2...) select col_mame1, col_name2... from table_name2 where id = 1; -values句は不要。 -カラムの型は同じでないといけない。 **トランザクション管理 ***セーブポイント > savepoint セーブポイント名 -commitはトランザクション全てコミットされる。 -rollbackはトランザクション全て破棄される。 -同一トランザクション内で同じ名前のセーブポイントを指定した場合、上書きされる。 > rollback to savepoint セーブポイント名; -セーブポイント名を設定した以後のトランザクションが破棄される。 -セーブポイント以前のトランザクションは生き。 -セーブポイント名が未設定のセーブポイントの場合、エラーとなる。 **月末日を求める。 > TO_DATE(TO_CHAR(ADD_MONTH(TO_DATE('適当な日付'), 1), 'YYYY/MM') || '/01') -1 -適当な日付 に1月足して、月初日(01)を算出し、1日引く。 **欠番探索 > select NEW_CODE = min(t1.CODE + 1) > from ( > select CODE from [TABLE] union all > select CODE from [RESERVE] (READUNCOMMITTED) > ) t1 left outer join ( > select CODE from [TABLE] union all > select CODE from [RESERVE] (READUNCOMMITTED) > ) t2 on (t1.CODE + 1) = t2.CODE > where t2.CODE is null via @IT掲示板 http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=15927&forum=26&5 *その他 **shellからSQLを実行する。 ***SQLファイルを実行 > sqlplus -S uid/pass@sid @hoge.sql ***SQL文を実行 > sqlplus -S uid/pass@sid <<END > select sysdate from dual; > exit sql.sqlcode > END ---- *なんかあればどうぞ #comment(vsize=2,nsize=20,size=40)

表示オプション

横に並べて表示:
変化行の前後のみ表示:
記事メニュー
目安箱バナー