SQL数据库的表结构操作

更改数据库中对象属性虽然很多时候是不必要的。,假如在创建表时,表名,列名、字段数据类型拼写错误。在插入数据操作时发现对象、数据类型不一致,要检查插入数据与数据库是否匹配,也可以更改表结构。

只能更改当前数据库中的对象名称或数据类型名称。大多数系统数据类型和系统对象的名称都不能更改。要修改数据库中指定的对象,当然要先回到自己的库中咯!

 

语法   sp_rename [ @objname = ] 'object_name' , [ @newname = ] 'new_name'     [ , [ @objtype = ] 'object_type' ]  

参数 [ @objname = ] 'object_name' 用户对象或数据类型的当前限定或非限定名称。

1. 重命名表 以下示例将 SalesTerritory 表重命名为 SalesTerr。

USE AdventureWorks;

GO

EXEC sp_rename 'SalesTerritory', 'SalesTerr';

 

2.重命名列

如果要重命名的对象是表中的列,则 object_name 的格式必须是 table.column

EXEC sp_rename 'table.column ' ,'newColumnName','column'

 以下示例将 SalesTerritory 表中的 TerritoryID 列重命名为 TerrID。

  EXEC sp_rename 'SalesTerritory.TerritoryID', 'TerrID', 'COLUMN';

 

3. 重命名索引

如果要重命名的对象是索引,则 object_name 的格式必须是 table.index

以下示例将 Index_VendorID 索引重命名为 Ind_VendorID。

 EXEC sp_rename N'Purchasing.ProductVendor.Index_VendorID', N'Ind_VendorID', N'INDEX'; GO 

 

4. 重命名别名数据类型

以下示例将 Phone 别名数据类型重命名为 Telephone。

EXEC sp_rename 'Phone', 'Telephone', N'USERDATATYPE';

 

5.更改列数据类型

 alter table TABLENAME alter column COLUMNNAME DATATYPE;

以下示例将 teacherbak 表中Department 列的数据类型char()重新定义为 varchar()。

 alter table teacherbak alter column Department varchar(20);

 

在oracle于中更改列数据类型则使用modify,下表为Oracle中的DDL语句

对字段操作 操作方法
更新字段名 alter table TABLE_NAME rename column column_old to column_new;
添加字段 alter table TABLE_NAME add COLUMN_NAME varchar(10);
删除字段 alter table TABLE_NAME drop column COLUMN_NAME;
添加字段并附值 alter table TABLE_NAME ADD COLUMN_NAME NUMBER(1) DEFAULT 1;
修改字段值 update TABLE_NAME set filedname=value where filedname=value;
修改字段数据类型 alter table tablename modify filedname varchar2(20);
posted @ 2015-06-19 11:00  城外  阅读(174)  评论(0)    收藏  举报