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'