一、数据查询语句---select
select column from table;查询表格
限定所选的记录
1.使用WHERE句子限定返回的记录
2.WHERE子句在FORM子句后
使用where子句
select * from emp
where job = 'CLERK';
字符串和日期
1.字符串和日期要用单引号括起来
2.字符串是大小写敏感的,日期值是格式敏感的
3.缺省的日期格式是'DD-MM-YY'
使用比较运算符
BETWEEN ...AND… :在两值之间 (包含),小的值在前
IN(list):匹配列出的值
Like:匹配一个字符模式
IS NULL :是空值
逻辑运算符
AND:如果组合的条件都为真则返回真值
OR: 如果组合的条件 之一是真值,返回真值
NOT: 如果条件为假则返回真值
优先级规则
括号将跨越所有优先级规则
使用ORDER BY 子句将记录排序
ASC: 升序,缺省
DESC: 降序
ORDER BY 子句在SELECT语句的最后
通过ORDER BY 列表的顺序来排序
SELECT ename, deptno, sal
FROM emp
ORDER BY deptno, sal DESC
二、数据操作语言(DML)
1.insert
NSERT语句一次将一个记录的数据输入表中
INSERT INTO table [(column [, column...])]
VALUES (value [, value...]);
例子
insert into dept(deptno,dname,loc)
values(50,'smith','china');---只可执行一次,不能插入主键中已有的值
从其他表中拷贝记录
INSERT INTO managers(id, name, salary, hiredate)
SELECT empno, ename, sal, hiredate
FROM emp
WHERE job = 'MANAGER'; ##表的结构要相同,不需要关键字values
2. UPDATE 语句
使用UPDATE语句修改已存在的记录
UPDATE table
SET column = value [, column = value]
[WHERE condition]; ####加限制条件
3.DELETE 语句
使用DELETE命令从表中删除记录.
DELETE [FROM] table
[WHERE condition];
三、数据定义语句(DDL)
1.create---创建表格、视图、用户
建表
CREATE TABLE dept
(deptno NUMBER(2),
dname VARCHAR2(14),
loc VARCHAR2(13));
ALTER TABLE 语句
使用ALTER TABLE 语句可:
加一列
修改列
对新列定义缺省值
ALTER TABLE table
ADD (column datatype [DEFAULT expr]
[, column datatype]...);
ALTER TABLE table
MODIFY (column datatype [DEFAULT expr]
[, column datatype]...);
修改列名
alter table employees
rename column deptno to id;
关键字是:Rename… to …
删除表
表中所有数据将被删除
事务被提交
所有索引被删除
不能回退
DROP TABLE dept30;
四、事务控制语句(TC)
1.在表中加注释-
使用COMMENT语句可向表或表中的列加注释
可通过如下数据字典视图看注释:
ALL_COL_COMMENTS
USER_COL_COMMENTS
ALL_TAB_COMMENTS
USER_TAB_COMMENTS
comment on column order_status2.testb
is '1'
comment on table order_status2
is 'new2';
2.提交数据
修改数据
UPDATE emp
SET deptno = 10
WHERE empno = 7782;
提交数据
SQL> COMMIT;
3.回滚后数据的状态
语句将使所有的修改失效.
修改的数据被回退.
恢复数据以前的状态
行级锁被释放.
DELETE FROM employee;
ROLLBACK;
五、数据控制语言(DCL)
1.grant
授予对象权限
例子1.
GRANT select
ON emp
TO sue, rich;
Grant succeeded.
例子2.
GRANT update (dname, loc)
ON dept
TO scott, manager;
Grant succeeded.
2.revoke
收回对象的权限
使用REVOKE语句从其他用户收回权限.
通过 WITH GRANT OPTION授予的权限也可收回.
REVOKE {privilege [, privilege...]|ALL} ON object FROM {user[, user...]|role|PUBLIC} [CASCADE CONSTRAINTS];
例子.
SQL> REVOKE select, insert
ON dept
FROM scott;
Revoke succeeded.