Oracle数据库常用sql语句和数据对象; z! ?) i2 y, P
一.数据控制语句 (DML) 部分$ R" T7 L _7 ~, B7 \; D
1.INSERT (往数据表里插入记录的语句)4 z8 J+ }, X N" R) v
" H2 _ i% N3 v. m( j3 `1 [INSERT INTO 表名(字段名1, 字段名2, ……) VALUES ( 值1, 值2, ……);
9 s# X/ N( e+ q1 K( V2 N. oINSERT INTO 表名(字段名1, 字段名2, ……) SELECT (字段名1, 字段名2, ……) FROM 另外的表名;
( Z4 [' a3 o3 ]5 R" G+ L# Q( f
- }. A7 [) A! C$ J V/ e8 T字符串类型的字段值必须用单引号括起来, 例如: ’GOOD DAY’
6 y0 b, r2 K" O% i) j7 t如果字段值里包含单引号’ 需要进行字符串转换, 我们把它替换成两个单引号''.
& a& q F: V" l" o# v字符串类型的字段值超过定义的长度会出错, 最好在插入前进行长度校验.
/ ^$ \5 a/ Q# p0 k, Y
: @& f8 o7 [7 J2 Z: G( {# |日期字段的字段值可以用当前数据库的系统时间SYSDATE, 精确到秒) P# @+ g# m0 H u3 x' X+ ]+ a& a
或者用字符串转换成日期型函数TO_DATE(‘2001-08-01’,’YYYY-MM-DD’)
; s0 {1 x1 o, w+ \1 x* r& QTO_DATE()还有很多种日期格式, 可以参看ORACLE DOC.7 |- s: e2 r7 G; r
年-月-日 小时:分钟:秒 的格式YYYY-MM-DD HH24:MI:SS; n$ n' G1 J( K1 S7 h
: F! D' w% M! }7 h0 ?INSERT时最大可操作的字符串长度小于等于4000个单字节, 如果要插入更长的字符串, 请考虑字段用CLOB类型,
1 p, P5 e" J; ^- T3 F! n方法借用ORACLE里自带的DBMS_LOB程序包.
# s4 }' ], ]4 b% d% z& ^1 F7 ]3 A3 S
INSERT时如果要用到从1开始自动增长的序列号, 应该先建立一个序列号! T P8 x' }% l# i
CREATE SEQUENCE 序列号的名称 (最好是表名+序列号标记) INCREMENT BY 1 START WITH 1
) J8 F$ m+ a- h0 L6 ~- D( \MAXVALUE 99999 CYCLE NOCACHE;# p9 N+ Z3 o& t( E: a9 u4 l' Y
其中最大的值按字段的长度来定, 如果定义的自动增长的序列号 NUMBER(6) , 最大值为999999
5 `5 K5 G9 X) ?& f8 lINSERT 语句插入这个字段值为: 序列号的名称.NEXTVAL |