sql修改欄位為自增
1. sql中如何用alter將一個欄位定義為自增
不可以這么做的,你可以另外增加一列作為自動遞增列,再把原來的列刪除.但自動增加欄位是不能用字元型的,要用數字型才可以.
先進入企業管理器把列msgi刪除.
添加一列,自動遞增:
alter table LVW add msginumeric(24) identity(1,1)
2. SQL語句如何修改一個表的一個欄位為自動增長列
如果該欄位不是主鍵,需要先設置該欄位為主鍵:
alter table 表名 add primary key(欄位名);
修改欄位為自動增長
alter table 表名 change 欄位名 欄位名 欄位類型 auto_increment;
3. sql server中把一列改為自增長的語句怎麼寫
sqlserver中把一列改為自增長的語句怎麼寫的方法。
如下參考:
1.首先,我們准備一個數據表,然後將向表中添加列,如下圖所示。
4. sqlserver將某欄位更新成自增型的sql語句
自增列不能修改,只能刪除或者添加
所以對應的就只能先刪除該列,然後再添加列,添加時賦值屬性為標識列
創建新列後會自動填充數字
5. 同sql語句把主鍵修改為自增
你可以這樣操作:
先刪除外鍵約束-->再刪除主鍵約束--->然後在增加自增列即可.
6. mySQL中如何修改列為自動增長急!!!
alter table questionlib modify idint(11) auto_increment;
注意事項:
修改後從下一條記錄開始自動增長。如果想讓原來的自動增長就得復制現有表的結構(無id),添加id並加上AUTO_INCREMENT,然後通過循環,添加n條空記錄,然後對應先前表的id,依次插入數據。
(6)sql修改欄位為自增擴展閱讀:
mysql自動增長開始值設置總結
1、創建表,設置表主鍵id自動增長,默認自動增長的起始值為1開始。
2、當表數據不為空的時候,重新去修改自動增長id開始值,mysql會主動去核對你設置的起始值是否是當前資料庫已有id的最大值+1; 若是則修改成功,若不是則修改不成功 (默認還是id最大值+1)
3、要設置自動增長為1開始,需要清空表數據才行。alter table table_name AUTO_INCREMENT=1
4、若每次直接在資料庫裡面插入數據,則會自動的去修改當前表的自動增長起始值(設置自動增長起始值為當前插入成功的數據的id)
7. 如何用sql語句將一個表的欄位改為主鍵自增
--為一個表添加一個主鍵約束
_TREEINFOPRIMARYKEY(ID);
--無法修改現有欄位為自增欄位,只能在建表時標注欄位自增,如
CREATETABLEMYTABLE(
IDINTPRIMARYKEYIDENTITY(1,1),
NAMEVARCHAR(20),
...
);
8. sql 修改某列 為自增欄位
=======================
那更簡單了,我還以為你有數據呢..
先刪除外鍵約束,然後刪除B列,然後新增一個自增的B列,然後添加約束..
OK..
=======================
/*--將表中的某個欄位轉換成標識欄位,並保留原來的值
注意,因為要刪除原表,所以,如果表和其他表的關聯,這些關聯要重新創建
--鄒建 2003.12--*/
/*--調用示例
exec p_setid '表名','要轉換的欄位名'
--*/
CREATE PROC P_SETID
@tbname sysname, --要處理的表名
@fdname sysname --要轉換為標識欄位的欄位名
as
declare @s1 varchar(8000),@s2 varchar(8000),@tmptb sysname
select @s1='',@s2='',@tmptb='[tmp_'+@tbname+'_bak]'
select @s1=@s1+',['+name+']'
+case name when @fdname then '=identity(bigint,1,1)' else '' end
,@s2=@s2+',['+name+']'
from syscolumns where object_id(@tbname)=id
select @s1=substring(@s1,2,8000),@s2=substring(@s2,2,8000)
exec('select top 0 '+@s1+' into '+@tmptb+' from ['+@tbname+']
set identity_insert '+@tmptb+' on
insert into '+@tmptb+'('+@s2+') select '+@s2+' from ['+@tbname+']
set identity_insert '+@tmptb+' off
')
exec('drop table ['+@tbname+']')
exec sp_rename @tmptb,@tbname
go
--使用測試
--創建測試的表
create table 表(編號 bigint,姓名 varchar(10))
insert into 表
select 1,'張三'
union all select 2,'李四'
union all select 4,'王五'
go
--調用存儲過程,將編號欄位改為標識欄位
exec p_setid '表','編號'
go
--顯示處理結果
select * from 表
--顯示是否修改成功
select name from syscolumns
where object_id('表')=id and status=0x80
go
--刪除測試
drop table 表
9. sql sever中如何將一列修改為自增長列
原來有個表news,id是主鍵,但不是非主鍵,現在需要將其修改為主鍵,方法如下: 對原有的id列是無法直接將其修改為主鍵的,必須間接地來實現,具體如下: 首先增加一個新列並定義為自增長列alter table news add id1 int Identity(1,1) not null 然後再資源管理器中右擊news表,選擇修改,將id列刪除,並將id1修改為id即可,當然這個過程也可以通過sql語句來實現
10. sql server 如何修改一個欄位為自增欄位
自增列不能直接修改,必須將原有ID列刪除,然後重新添加一列具有identity屬性的ID欄位。比如你要修改的
欄位名
為ID: