ORACLE 常用的SQL语法和数据对象
一.数据控制语句 (DML) 部分
1.Insert (往数据表里插入记录的语句)
Insert INTO 表名(字段名1, 字段名2, ……) VALUES ( 值1, 值2, ……);
Insert INTO 表名(字段名1, 字段名2, ……) Select (字段名1, 字段名2, ……) from 另外的表名;
字符串类型的字段值必须用单引号括起来, 例如: ’GOOD DAY’
如果字段值里包含单引号’ 需要进行字符串转换, 我们把它替换成两个单引号''.
字符串类型的字段值超过定义的长度会出错, 最好在插入前进行长度校验.
日期字段的字段值可以用当前数据库的系统时间SYSDATE, 精确到秒
或者用字符串转换成日期型函数TO_DATE(‘2001-08-01’,’YYYY-MM-DD’)
TO_DATE()还有很多种日期格式, 可以参看ORACLE DOC.
年-月-日 小时:分钟:秒 的格式YYYY-MM-DD HH24:MI:SS
Insert时最大可操作的字符串长度小于等于4000个单字节, 如果要插入更长的字符串, 请考虑字段用CLOB类型,
方法借用ORACLE里自带的DBMS_LOB程序包.
Insert时如果要用到从1开始自动增长的序列号, 应该先建立一个序列号
Create SEQUENCE 序列号的名称 (最好是表名+序列号标记) INCREMENT BY 1 START WITH 1
 
相关文档:
学习Oracle DBA也半个多学期了,今天猛然才发现,原来我的书还是很新的,上课操作时候也只是知道大概怎么做,但是要真的全部自己做,而不去翻书还是有一定的难度的,所以呢,今天开始将DBA从头复习一遍,同时再操作一遍。
第一章,学的是Oracle的体系结构� ......
一直以为
这样就可以自增了。。
可今天在测试时,发现控制台一直报“序列号不存在"的错。。。后来才知道在sequence后� ......
主要是通过replace和translate来实现
SQL> create view v_tt
2 as
3 select ename||' '||deptno as data
4 from emp;
View created.
SQL> select * from v_tt;
DATA
---------------------------------------------------
SMITH 20
ALLEN 30
WARD 30
JONES 20
MARTIN 30
BLAKE 30
CLARK 10
......
主要方法是通过使用CASE表达式来“标记”一个值是否为NULL。这里标记有两个值,一个表示NULL,一个表示非NULL。这样,只要在ORDER BY子句中增加标记列,便可以很容易的控制空值是排在前面还是排在后面,而不会被空值所干扰。
SQL> select ename,sal,comm from emp;
ENAME SAL COMM
----- ......
radhat 5.2下安装oracle10g
1、系统需求:
内存:至少512mb,推荐用1g;
硬盘:服务器至少60g;
(一般情况下硬件都能符合要求)
软件包:glibc-2.3.2, libaio-0.3.96
交换空间:
RAM: 0~256MB, SWAP: 3 倍 RAM 大小
RAM: 256~512MB, SWAP: 2 倍 RAM 大小
RAM: >=512MB, SWAP: 10 ......