MS SQL 2005基本操作(一):SQL语句对表、视图、索引和同义词的操作

来源:互联网 发布:淘宝支付限额 编辑:程序博客网 时间:2024/05/02 04:46
 

1. 创建表

Use db_ProductMng

Creat table t_ProductInfo

(

ProductCode varchar(10) Not Null,

DeptNo varchar(3) Null,

ProduceName varchar(20) Not Null,

ProducingArea varchar(30) Not Null,

Price numeric(18,2) Null,

FloatingPrice decimal(18,2) Null,

Currncy varchar(3) Null,

Stocks int Null

)

2. 修改表的结构

Use db_ProductMng

alter table t_ProductInfo

alter column ProductName varchar(40) Null

3. 添加、修改记录

(1) 添加记录

Use db_ProductMng

Insert into t_ProductInfo

(ProductCode, DeptNo, ProduceName, ProducingArea, Price, FloatingPrice, Currncy, Stocks)

Values

(‘A001’,’001’,’256MB-播放器’,’150.00’,10.00,’RMB’,400)

(2) 修改记录

Use db_ProductMng

Update t_ProductInfo

Set Stock = 500

Where DeptNo = ‘003’

4. 删除表

(1) 删除记录

Delete from t_ProductInfo where ProductName = “掌上游戏机”

Delete from t_ProductInfo//删除这个表中所有的记录

(2) 删除表

Drop table t_Productinfo

5. 主键、外键和索引的创建

主键是唯一能区分表中每一行记录的一个或多个行。

外键是表的一个或多个列,是其他表的主键。

索引是由表中的一个或多个列生成的键值,是反映表中数据存储位置的指针。主键是表的特殊索引。

(1)在Create table语句中定义主键、外键

Creat table t_ProductInfo

(

ProductCode varchar(10) primary key Not Null,

DeptNo varchar(3) Null,

ProduceName varchar(20) Not Null,

ProducingArea varchar(30) Not Null,

Price numeric(18,2) Null,

FloatingPrice decimal(18,2) Null,

Currncy varchar(3) Null,

Stocks int Null

)//定义主键

--constraint FK_1 foreign key references t_ProductInfo(ProductCode)--//定义外键

(2)在alter table语句中定义和移除主键、外键

//定义主键和外键

Alter table t_ProductInfo

Add primary Key(ProductCode)

Alter table t_SaleRecord

Add foreign key(ProductCode) references t_ProductInfo(ProductCode)

//移除主键和外键

Alter table t_ProductInfo

Drop PK_t_ProductInof

Alter table t_SaleRecord

Drop FK_t_SaleRecord_t_ProductInfo

(3) 用create index语句创建索引

Create index IX_t_ProductInfo

On t_ProductInfo(ProductName)

删除索引:drop index IX_t_ProduceInfo

6. 定义表的约束

表的约束是检查列取值有效性的条件,虽然不是必须的,但是可以保证表中数据的完整性和正确性。例如t_productinfo的列price的取值不能为负值。

(1) 在create table语句和alter table语句中添加、删除约束

Creat table t_ProductInfo

(

ProductCode varchar(10) Not Null,

DeptNo varchar(3) Null,

ProduceName varchar(20) Not Null,

ProducingArea varchar(30) Not Null,

Price numeric(18,2) check(Price>0.00) Null,

FloatingPrice decimal(18,2) Null,

Currncy varchar(3) Null,

Stocks int Null

)

//在alter table语句中添加约束

Alter table t_ProductInfo

Add check(Price>0.00)

//删除约束条件语句

Alter table t_ProductInfo

Drop CK_t_ProductInfo

7. 定义视图

视图和表都是数据库中的对象,但是视图是虚拟表,视图的数据不会作为对象存储在数据库中。对视图存储的事查询语句,查询语句的结果集构成视图所返回的虚拟表。视图中的列可以来源于一个表或多个表连接查询的结果。

Create view v_ProductStock

As select ProductName,Stock

Form t_ProductInfo

删除视图用drop view v_ProductStock

8. 定义同义词

同义词的作用见:http://tech.techweb.com.cn/thread-242905-1-1.html

同义词是数据库对象的别名,在SQL Server中有4种对象可以定义同义词,它们是表、视图、存储过程和函数。

创建同义词就是定义同义词的名称和指定所代替的数据库对象。

//同义词的创建

Create synonym SY_ProductStock

For v_ProductStock

//同义词的删除

Drop synonym SY_ProductStock

原创粉丝点击