oracle中sql语句的学习

1. 创建表
Create table [用户名] 表名 (列名1 数据类型 [,…列名N 数据类型] )
注: 表名首字符应该为字母,可以使用下划线,字母,数字,但不能使用空格和单引号;
不能使用Orcale保留字来为表命名;
表名的最大长度为30个字符;
同一用户模式下的不同表不能具有相同的名称;
[用户名]如果用户在自己的模式中创建表,则可以不指定用户名.

2. 修改表结构
a) 用于更改现有列:
Alter table 表名 modify (列名1 数据类型 , 列名2 数据类型……)
b) 用于向表中添加新列
Alter table 表名 add (列名 数据类型, 列名2 数据类型……)
c) 用于删除表中现有列
Alter table 表名 drop column 列名

3. 截断表
Truncate table 表名
注:用于删除表中的记录,但不删除表的结构,与delete的区别是删除记录的速度比后者快

4. 删除表
Drop table 表名

5. 查询表记录
Select * | [distinct] 列名 | expression [列名或列名的别名] from 表名 [where condition] [order by 列名]
注: distinct关键字的作用是限制只返回不同记录的列值
Expression关键字是列名和常数组成的表达式
Where子句是指查询的条件
Order by 子句是指按照某一列排序,它应该为命令中的最后一个子句
Group by 子句用于将信息表划分为组
Having 子句有来指定Group by 子句检索条件.该子句位于Group by后面

6. 插入记录
Insert into 表名 [列名1,列名2……列名N] values (value1,value2…….valueN)

7. 删除表中某一条记录
Delete [from] 表名 [where condition]

8. 事务提交
Commit work 或 commit
注:用命令(exit或quit)正常退出SQL/Plus就提交
  强制非正常退出就回滚

9. 事务回滚
Rollback 事务标记ID 或 rollback
注:如果没有指明事务标记,则事务回滚就回滚到事务开始处

10. 事务标记
Savepoint 事务标记ID

11. 特别语句
a) 复制表
Select * into 新表名 form 旧表名 [where 1=2]
Create table 新表名 as select 列名 from 旧表名 [where 1=2]
注:如果不加where条件就复制整张表,加了where条件就只复制表结构
b)

你可能感兴趣的:(数据结构,oracle,sql)