SQL语句增删改表的字段
来源:互联网 发布:淘宝即将上架开售抢拍 编辑:程序博客网 时间:2024/04/28 11:52
'创建表
CREATE TABLE dbo.CategoriesNew
(CategoryID intIDETITY (1,1) NOT NULL,
CategoryName nvarchar(15) NOT NULL,
Description ntext NULL,
Picture image NULL)
'删除表
DROP TABLE table_name[,...n]
'增加字段
addsqlstr = "alter table docdsp add dspcode char(200)"
'删除字段
delsqlstr = "ALTER TABLE table_NAME DROP COLUMN column_NAME"
'修改字段类型
editsqlstr = "ALTER TABLE table_name ALTER COLUMN column_name new_data_type"
USE数据库名称
GO
IF exists (SELECT * FROM syscolumns WHERE id = object_id('表名) and name='列字段')
--ALTER TABLE 表名 DROP COLUMN ['列字段'] --删除字段
ALTER TABLE 表名 ALTER COLUMN [列字段] [varchar] (10) NULL --修改字段
ELSE
ALTER TABLE 表名 ADD [列字段] [varchar](10) NULL --新增字段
GO
----------------------------------------------------------------------------------------------------------------------------
语法
ALTER TABLE 表 {ADD ADD{COLUMN 字段类型 [ (字长)] [NOT NULL] [CONSTRAINT 索引 ] |
ALTER COLUMN 字段类型 [(字长)] |
CONSTRAINT 多重字段索引 } |
DROP DROP{COLUMN 字段 I CONSTRAINT 索引名 } }
ALTER TABLE 语句分为以下几个部分:
部分 说明
table 欲修改的表之名称。
field 欲在表内增加或删除的字段的名称。或表内欲被替换的字段名称。
type 字段的数据类型。
size 字段的字符长度 (文本及二进制字段)。
index 字段索引。欲了解更多有关如何构造本索引的信息,请看 CONSTRAINT子句。
multifieldindex 欲增加至表 中的多重字段索引的定义。欲了解更多有关如何构造本索引的信息,请看 CONSTRAINT子句。
indexname 欲删除的多重字段索引的名称。
说明
使用 ALTER TABLE 语句,可用多种不同方法更改当前已存在的表:你可以:
使用 ADD COLUMN 在表中添加新的字段。需要指定字段名、数据类型、还可以 (对文本和二进制字段)指定长度。例如,下列语句在员工表中增加一 25 个字符的、名为 Notes 的文本字段:
ALTER TABLE Employees ADD COLUMN Notes TEXT(25)
也可以定义此字段的索引。关于单一字段索引的详细信息,请参阅CONSTRAINT 子句主题。
如果对一字段指定 NOT NULL,则在这字段中添加的新记录必须有有效的数据。
使用ALTER COLUMN改变一个当前字段的数据类型,需要指定字段名、新数据类型、还可以 (对文本和二进制字段)指定长度。例如,下列语句把雇员表中一个字段的数据类型, 被称为ZipCode(最初被定义为整数),改变成一个10字符文本字段:
ALTER TABLE Employees ALTER COLUMN ZipCode TEXT(10)
使用 ADD CONSTRAINT 添加多重字段索引。关于多重字段索引的详细信息,请参阅 CONSTRAINT 子句主题。
使用 DROP COLUMN 删除字段。只要指定欲删除的字段名即可。
使用 DROP CONSTRAINT 删除多重字段索引。只要在 CONSTRAINT 保留字后面指定索引名即可。
--------------------------------------------------------------------------------
注意
不能同时添加或删除一个以上的字段或索引。
你可以使用 CREATE INDEX 语句在一个表中增加一个单字段或多重字段,你还可以使用 ALTER TABLE 或 DROP 语句删除一个由ALTER TABLE或CREATE INDEX建立的索引。
可以在单一字段上使用 NOT NULL,或在用于单一字段或多重字段(名为 CONSTRAINT) 的 CONSTRAINT 子句中使用 NOT NULL。但是,一个字段只能使用一次 NOT NULL 限制。尝试多次应用此限制将导致运行错误。
其它:
--判断一个表中是否存在某字段
判断某一表PartStock中字段PartVelocity是否存在
if
exists (select * from syscolumns where
id=object_id('PartStock') and name='PartVelocity')
print
'PartVelocity exists'
else print 'PartVelocity not
exists'
另法:
判断表的存在性:
select count(*) from sysobjects where type='U'
and name='你的表名'
判断字段的存在性:
select count(*) from syscolumns
where id = (select id from sysobjects where type='U' and name='你的表名') and name = '你要判断的字段名'
或 select * from syscolumns where id = object_id( '表名称 ') and name = '列名称 '
或 if exists (select * from syscolumns where id = object_id('表名称 ') and name='列名称')
print '列 exists'
else
print '列 not exists'
--判断要添加列的表中是否有主键
if exists(select 1 from sysobjects where
parent_obj=object_id('tb') and xtype='PK')
begin
print
'表中已经有主键,列只能做为普通列添加'
--添加int类型的列,默认值为0
alter table tb add 列名 int default
0
end
else
begin
print '表中无主键,添加主键列'
--添加int类型的列,默认值为0
alter
table tb add 列名 int primary key default 0
end
- SQL语句增删改表的字段
- 运用sql语句增删改字段
- Mysql 表的增删改sql语句
- SQL 对字段的增删改
- sql增删改语句
- SQL语句 增删改字段或外键约束 写法
- 标准SQL语句(2)--- 表的增删改
- SQL语句的增删改查
- sql 语句的增删改差
- sql的增删改查语句
- SQL语句的增删改查
- 增删查改的sql语句
- SQL语句的增删改查
- 执行SQL语句的增删改查
- sql语句的增删改查
- sql语句之表增删改操作
- SQL SERVER 字段增删改
- oracle字段,表的增删改查
- get,set总结
- DOS命令
- SQL日期转换CONVERT函数
- 夏天不好
- GridView中的DataFormatString属性
- SQL语句增删改表的字段
- 后台设置tr属性可见
- SQL 中With as 的用法
- 清除vs2003-vs2008起始页最近打开项目
- C#调用winrar压缩文件夹
- C#解压或压缩文件夹
- JAVA 堆栈
- 七月份工作总结
- 2012多校联合(3)