mysql-alter语句

发布时间 2023-06-30 09:44:37作者: 往事已成昨天

T-SQL Alter 语句

 

ALTER TABLE 语句用于在已有的表中添加、修改或删除列。

 

修改数据库常用语句

语法格式:

ALTER DATABASE database_name{ADD FILE<filespec>[ ,...n] [TO FILEGROUP{filegroup_name}]| ADD  LOG FILE<filespec>[ , ...n]| REMOVE FILE <filespec>| ADD FILEGROUP filegroup_name| MODIFY FILEGROUP filegroup_name {filegroup_property |NAME = new_filegroup_name }

 

参数介绍:

  • ADD FILE :向数据库文件添加新的数据文件。

  • ADD LOG FILE:向数据库添加事物日志文件。

  • REMOVE FILE:从SQL Server 实例中删除逻辑文件说明并删除物理文件。

  • MODIFY:修改某一个文件组的属性。

 

案例:

修改数据库xscj现在数据文件的属性,将主数据文件的最大大小修改为不限制,增长方式修改为按每次5MB增长。alter database xscj        modify file                (name='xscj_data',                 maxsize=unlimited                 )goalter database xscj        modify file                (name='xscj_data',                 filegrowth=5MB                 )go说明:Alter databaseAlter database语句一次只能修改数据文件的一个属性,若修改主数据文件的两个属性,需执行两次alter database命令
先为数据库xscj增加数据文件xscjbak,初始大小为10MB,最大为50MB,增长方式为5%。然后删除xscjbak.alter database xscj        add file                (name='xscjbak',                 filename='e:\sql\xscjbak.ndf',                 size=10MB,                 maxsize=50MB,                 filegrowth=5%                 )Goalter database xscj        remove file xscjbakgo增加数据文件【例2-3】为数据库“jxgl”增加数据文件jxglbak,初始大小为10MB,最大为50MB,增长方式为5%。alter database jxgl        add file                (name='jxglbak',                 filename='e:\sql\jxglbak.ndf',                 size=10MB,                 maxsize=50MB,                 filegrowth=5%                 )go
删除数据文件例2-4】从数据库“jxgl”中,删除数据文件jxglbak。alter database jxgl        remove file jxglbakgo从数据库中删除文件组alter database xscj        remove file xscj_data2goalter database xscj        remove file xscj_data3goalter database xscj        remove filegroup FgroupGo说明:使用T_SQL命令删除文件组时必须为空,使用菜单可一同删除。
为数据库添加一个日志文件alter database xscj        add log file                (name=xscj_log2,                 filename='e:\sql\xscj_log2.ldf',                 size=5MB,                 maxsize=10MB,                 filegrowth=1MB                 )go从数据库xscj中删除一个xscj_Log2日志文件alter database xscj        remove file xscj_log2go将数据库xscj中更名为just_test,alter database xscj        modify name=just_testgo

 

修改表常用语句

 

修改Sql Server表结构时,常用到Alter语句,把一些常用的alter语句列举如下。

 

1:向表中添加字段

Alter table [表名] add [列名] 类型

2:  删除字段

Alter table [表名]  drop column [列名]

3:  修改表中字段类型 (可以修改列的类型,是否为空)

Alter table [表名] alter column [列名] 类型

4:添加主键

Alter table [表名] add constraint [ 约束名] primary key( [列名])

5:添加唯一约束

Alter table [表名] add constraint [ 约束名] unique([列名])

6:添加表中某列的默认值

Alter table [表名] add constraint [约束名] default(默认值) for [列名]

7:添加约束

Alter table [表名] add constraint [约束名] check (内容)

8:添加外键约束

Alter table [表名] add constraint [约束名]  foreign key(列名) referencese 另一表名(列名)

9:删除约束

Alter table [表名] drop constraint [约束名]

10:重命名表

exec sp_rename '[原表名]','[新表名]'

11:重命名列名

exec sp_rename '[表名].[列名]','[表名].[新列名]'创建注释(N'user', N'dbo', N'TABLE' 为固定的写法)

12:为表添加描述信息

EXECUTE sp_addextendedproperty N'MS_Description', '人员信息表', N'user', N'dbo', N'TABLE', N'表名', NULL, NULL

13:为字段Username添加描述信息

EXECUTE sp_addextendedproperty N'MS_Description', '姓名', N'user', N'dbo', N'TABLE', N'表名', N'column', N'Username'

14:为字段Sex添加描述信息

EXECUTE sp_addextendedproperty N'MS_Description', '性别', N'user', N'dbo', N'TABLE', N'表名', N'column', N'Sex'

15:更新表中列UserName的描述属性:

EXEC sp_updateextendedproperty 'MS_Description','新的姓名','user',dbo,'TABLE','表名','column','UserName'

16:删除表中列UserName的描述属性:

EXEC sp_dropextendedproperty 'MS_Description','user',dbo,'TABLE','表名','column','Username'

 

 

案例:

use TestBasego--创建表create table ProductInfos(   Id int identity(1001,1) primary key  not null,  --标识种子,增量   ProNo varchar(50) not null,   ProName nvarchar(20) not null,   TypeId int not null,   Price decimal(18,2) default (0.00) not null,   ProCount int default (0) null,)go--删除表drop table ProductInfosgo--创建表之后,进行修改--不删除原来的表的基础上,进行修改--添加一列 ProRemark   alter table ProductInfos add ProRemark nvarchar(max) null--删除一列 ProRemarkalter table ProductInfos drop column ProRemark--修改一列alter table ProductInfos alter column ProNo nvarchar(50) null--修改列名  一般慎用--exec sp_rename 'ProductInfos.ProCount','Count','column'
在xscj数据库下修改student表,增加少数民族否一列,为bit类型。然后在此表中删除此列.use xscjgoalter table student        add 少数民族否 bitgoalter table student        drop column 少数民族否go在xscj数据库下修改student表,将姓名长度由原来的8修改为10;将出生日期由原来的smalldatetime修改为date;use xscjgoalter table student        alter column 姓名 varchar(10)goalter table student        alter column 出生日期 datego

 

 

 

 

 

收录于合集 #数据库
 7
上一篇SQL Server 数据操作下一篇数据库增删改语句
阅读 38
Linux分布式主任
55篇原创内容