###
基本知识
SQL语言是一种非过程语言;
SQL语句接受集合作为输入,返回集合作为输出;
SOL的集合特性允许将一条SQL语句的结果作为另一条SQL语句的输入;
SQL不要求用户指定对数据的存放方法,用户无需了解存取路径及物理地址,存取的路径由DBMS优化来完成;
查找可以是集合,插入、删除更新也可以是元组;
同一语法结构有两种使用方法,用户在终端命令提示符下输入SQL命令时数据库服务器立即执行的交互式应答使用,和把SQL命令嵌入到应用程序中执行的预编译SQL。
通过SQL语言可以完成以下操作
1建立数据库表格,并设置表格可以使用的空间;
2改变数据库系统的环境设置;
3针对某个数据库或表格授予用户存取权限;
4对数据库表格建立索引值;
5修改数据库表格结构(新建、删除、修改表格字段);
6对数据库进行数据的新建、修改、删除、查询。
SQL语言分类
1数据查询语言-DQL-select 语句
2数据操作语言-DML-insert(插入数据) update(更新数据) delete(删除数据) 语句
3事务控制语言-TCL-commit(提交对数据库的更改) rollback(取消对数据库的更改) savepoint(设置保存点)
4数据定义语言-DDL-create table(创建表) alter table(修改表结构) drop table(删除表)
5数据控制语言-DCL-grant(授予用户或者角色权限) revoke(收回用户或者角色权限)
SQL语言编写规则
1关键字不区分大小写
2字符值区分大小写
用户模式
1模式是一个数据库对象的合集
2模式为一个数据库用户所拥有,并且具有和该用户相同的名称,如system模式、scott模式
3在一个模式内部不能直接访问其他模式的数据库对象,即使在具有访问权限的情况下,也需要指定模式名称才可以访问其他模式的数据库对象
4模式对象是用户创建的逻辑结构,用以储存或引用数据
5模式拥有模式对象,模式对象被模式所拥有
scott模式示例(还有很多其他模式)
emp:
empno|NUMBER
ename|VARCHAR2
job|VARCHAR2
mgr|NUMBER
hiredate|DATE
sal|NUMBER
comm|number
salgrade:
grade|NUMBER
losal|NUMBER
hisal|NUMBER
dept:
empno|NUMBER
dname|VARCHAR2
loc|VARCHAR2
bonus:
ename|VARCHAR2
job|VARCHAR2
sal|NUMBER
comm|NUMBER
SQL>connect scott/tiger
已连接
SQL>select table_name from user_tables;--查询数据库的所有表名
SQL>connect system/1qaz2wsx
已连接
SQL>select table_name from dba_tables where owner='SCOTT';--在system模式下查询数据库的所有表名
###