SQL的数据操作(三)

SQL的数据操作(三)

上一篇中初略了解到,操作数据库的三种基本语句,insert,update,delete,还有之前提到的查询基本语句select

实际应用中,有些其他类似功能的实现语句,例如:

1. TOP相关语句

    搜索前N条记录

     select (TOP N ) * from table_name where condition....

    搜索前 N% 部分的记录

     select (TOP N PERCENT) * from table_name where condition....   

2. TRUNCATE语句

语法:TRUNCATE  TABLE table_name

应用范围:

1) TRUNCATE 的处理速度相对较快;

2) DELETE操作是写日志文件的,请求处理后可通过ROLLBACK命令撤销,但TRUNCATE是一个DDL语言,请求被隐式提交,不能被撤销;

3) TRUNCATE清空表后表和表的索引将重新设置成会初始大小,当DELETE不能;

4) TRUNCATE作用是删除表中所有的行,其后不接WHERE条件语句,直接删除行记录

3. 表结构的修改

在已存在的表中增加新列

语法:ALTER TABLE table_name ADD (colname datatype(len))

eg: ALTER TABLE student ADD (department char(8))

增加已有列的数据类型

语法:ALTER TABLE table_name MODIFY(colname datatype(len))

eg: ALTER TABLE student MODIFY (name, VARCHAR(25))

4. 表的删除

删除已存在的数据表

语法:DROP TABLE table_name

eg: DROP TABLE STUDENT

5. 表的创建

创建新的数据表

语法:CREATE TABLE table_name

           (colname1  datatype[len/size]            [......])

创建表时必须指定表名、列名,每一列必须指定数据类型,

对应给定的表来说,列名必须唯一,同一数据库中不同表的列名称可以相同

常用的数据类型: int, char, date

6. 创建带约束条件的表

创建新的数据表

语法:CREATE TABLE table_name

            colname datatype [COLLATE<collation_name>][NULL|NOT NULL]

            [......]

应用规则:

创建表时必须指定表名、列名,每一列必须指定数据类型,

对应给定的表来说,列名必须唯一,同一数据库中不同表的列名称可以相同

主要使用的约束条件:

1) 主键(primary key):唯一标识每一行

一个表中只可以定义一个主键,且主键列中不能输入NULL值,最多可定义16列作为主键

eg:CREATE TABLE table_name_1(col1 int primary key, col2 int) 创建单一主键

         CREATE TABLE table_name_1(col1 int, col2 int, constraint col primary key(col1, col2))

2) 外键(foreign key)定义列值与另一个表的primary key相匹配的列

1)Foreign key约束必须引用另一个表的Primary key或Unique约束,

相关表中定义为主键的所有列必须作为Foreign key所包含在当前表中,

eg:CREATE TABLE table_name_2(col21 int primary key, col22 int, foreign key(col) references table_name_1(col))

3) CHECK约束 根据指定值测试列中的输入值

CHECK约束条件可以引用同一表中的列

4) 唯一性约束(Unique)在列中应用Unique约束以确保列中所有行的值均不相同

可以向表中多列应用unique约束,向现有表应用unique约束时,一直会验证现有数据

eg: CREATE TABLE table_name_4(col1 int unique)

5) 删除约束 对不需要的约束条件从列中删除

语法:ALTER TABLE table_name DROP CONSTRAINT collate

说明:删除列之前必须先删除列中的约束

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值