1. sql中modify和alter 都可修改,二者区别是什么
一、功能不同
1、modify:只能修改字段的属性。
2、alter:除了修改字段属性外,还可以做增加删除操作。
二、语法不同
1、modify:修改字段名使用:ALTER TABLE [表名] MODIFY [列名] [数据类型]
2、alter:数据库SQL语言的修改语句,可以用来修改基本表,表示格式为:ALTER TABLE<表名>[改变方式]。
三、范围不同
1、modify:只是alter功能下的一个功能模块。
2、alter:包括“ADD”、“DROP”、“CHANGE”、“MODIFY”四个功能模块。
2. Sql数据库怎么改列名用alter吗
EXEC sp_rename 'tablename.[oldcol]', 'newcol', 'COLUMN'
把这三个分别换成你要的表名,原列名和新列名,其他不动
'tablename.[oldcol]', 'newcol'
3. SQL server怎样使用ALTER 语句修改字段名
1、新建一个表:student,用做示例,如图所示。
(3)sqlalter修改列名扩展阅读
在修改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 '[表名].[列名]','[表名].[新列名]'
12、删除主键,以及主键上的索引
alter table table_name drop constraint clusteredName
4. SQL 修改表中的列名(急~~~)
1、在oracle数据库中: ALTER TABLE 表名 RENAME COLUMN 列名 TO 新列名。
2、在sqlserver数据库中:exec sp_rename '[表名].[列名]‘,’[表名].[新列名]'。
3、在mysql数据库中:ALTER TABLE 表名 CHANGE 列名 新列名 列类型。
(4)sqlalter修改列名扩展阅读:
SQL中对表的其它操作:
1、插入列:
ALTER TABLE [表名.]TABLE_NAME ADD COLUMN_NAME DATATYPE。
2、为表中某列添加约束:大于等于100
alter table 表名 add check(列名>=100)。
3、更改表某列的数据类型为nchar(30):
alter table 表名 altercolumn列名 nchar(30)。
4、删除表中某列的相关约束:
alter table 表名 dropconstraint约束名。
5、删除表中的某列:
alter table 表名 dropcolumn列名。
参考资料:网络-SQL语句大全
5. SQL如何更改表中的列名称
代码如下:
EXEC sp_rename '表名.[原列名]', '新列名', 'column'
sp_rename
更改当前数据库中用户创建对象(如表、列或用户定义数据类型)的名称。
语法
sp_rename [ @objname = ] 'object_name' ,
[ @newname = ] 'new_name'
[ , [ @objtype = ] 'object_type' ]
参数 www.2cto.com
[@objname =] 'object_name'
是用户对象(表、视图、列、存储过程、触发器、默认值、数据库、对象或规则)或数据类型的当前名称。如果要重命名的对象是表中的一列,那么 object_name 必须为 table.column 形式。如果要重命名的是索引,那么 object_name 必须为 table.index 形式。object_name 为 nvarchar(776) 类型,无默认值。
[@newname =] 'new_name'
是指定对象的新名称。new_name 必须是名称的一部分,并且要遵循标识符的规则。newname 是 sysname 类型,无默认值。
[@objtype =] 'object_type'
是要重命名的对象的类型。object_type 为 varchar(13) 类型,其默认值为 NULL,可取下列值。
值 描述
COLUMN 要重命名的列。
DATABASE 用户定义的数据库。要重命名数据库时需用此选项。
INDEX 用户定义的索引。
OBJECT 在 sysobjects 中跟踪的类型的项目。例如,OBJECT 可用来重命名约束(CHECK、FOREIGN KEY、PRIMARY/UNIQUE KEY)、用户表、视图、存储过程、触发器和规则等对象。
USERDATATYPE 通过执行 sp_addtype 而添加的用户定义数据类型。
返回代码值
0(成功)或非零数字(失败)
6. sql能用alter table修改列名吗
不能
他只能修改列属性,比如类型、长度、默认值
据我所知,没有修改列名的SQL
不过你可以备份数据后,删除后再加
7. 标准sql修改数据表列名的语句怎么写
那个 修改列名 各个数据库都支持的写法 到底有没有, 我也不大确定.
下面是 3种数据库 各自的写法.
你可以切换着测试测试, 看看哪种写法,是 各个数据库都支持的写法.
Oracle
SQL> ALTER TABLE test_tab
2 RENAME COLUMN val TO val2;
Table altered.
SQL Server
调用 EXECUTE sp_rename 来进行 对数据库表中,列名的变更。
1> EXECUTE sp_rename N'dbo.test_tab.val', N'Tmp_val2', 'COLUMN'
2> GO
注意: 更改对象名的任一部分都可能会破坏脚本和存储过程。
1> EXECUTE sp_rename N'dbo.test_tab.Tmp_val2', N'val2', 'COLUMN'
2> GO
注意: 更改对象名的任一部分都可能会破坏脚本和存储过程。
MySQL
mysql> ALTER TABLE test_tab
-> CHANGE COLUMN val val2 VARCHAR(10); //
Query OK, 0 rows affected (0.13 sec)
Records: 0 Duplicates: 0 Warnings: 0
8. sql修改列名,增加列,删除列语句怎么写
查看列:desc 表名;
修改表名:alter table t_bookrename tobbb;
添加列:alter table 表名addcolumn 列名 varchar(30);
删除列:alter table 表名dropcolumn 列名;
修改列名: alter table bbbchangennnnn hh int;
修改列属性:alter table t_bookmodifyname varchar(22);
9. sql server,更改列名怎么写如列A改名为列B
sp_rename
释义:更改当前数据库中用户创建对象(如表、列或用户定义数据类型)的名称
语法如下:
sp_rename[@objname=]'object_name',[@newname=]'new_name'[,[@objtype=]'object_type']
参数:
1.[@objname =]'object_name'是用户对象(表、视图、列、存储过程、触发器、默认值、数据库、对象或规则)或数据类型的当前名称。如果要重命名的对象是表中的一列,那么object_name必须为table.column形式。如果要重命名的是索引,那么object_name必须为table.index形式。object_name为nvarchar(776)类型,无默认值。
2. [@newname =]'new_name'是指定对象的新名称。new_name必须是名称的一部分,并且要遵循标识符的规则。newname是sysname类型,无默认值。
3. [@objtype =]'object_type'是要重命名的对象的类型。object_type为varchar(13)类型,其默认值为 NULL,可取下列值。
注意:
只能更改当前数据库中的对象名称或数据类型名称。大多数系统数据类型和系统对象的名称不能更改。
重命名视图时,sysobjects表中有关该视图的信息将得到更新。重命名存储过程时,sysobjects表中有关该过程的信息将得到更新。
每当重命名 PRIMARY KEY 或 UNIQUE 约束时,sp_rename都会自动为相关联的索引重命名。如果重命名的索引与 PRIMARY KEY 约束相关联,那么sp_rename也会自动重命名主键。
修改列A名为B:
sp_rename'table1.colname','B','A'