最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

將一個(gè)表中個(gè)某一列修改為自動(dòng)增長(zhǎng)的方法

 更新時(shí)間:2014年09月18日 17:36:58   投稿:whsnow  
如果表中沒(méi)有數(shù)據(jù)可以使用 drop column然后再add column,如果存在一部分?jǐn)?shù)據(jù)可以使用本文提供的第二種解決方法

昨天有位學(xué)生問(wèn)我“一個(gè)表已經(jīng)建好了,能不能將里面的一個(gè)字段改為自動(dòng)增長(zhǎng)?”,“能,但沒(méi)有必要去修改它,應(yīng)該在建表的時(shí)候就設(shè)計(jì)好” 我說(shuō)。 這時(shí)候他和另一位學(xué)生
討論起來(lái)。他覺(jué)得可以,另一位試過(guò)說(shuō)不行。因?yàn)樗麄儾皇俏規(guī)О嗉?jí)的學(xué)生,他們也咨詢了自己的老師,所以我沒(méi)有再發(fā)表意見(jiàn)。

需求:
如何將一張表中個(gè)某一列修改為自動(dòng)增長(zhǎng)的。

解答:
1) 情景一:表中沒(méi)有數(shù)據(jù), 可以使用 drop column然后再add column

alter table 表名 drop column 列名
alter table表名 add列名 int identity(1,1)

2) 情景二:表中已經(jīng)存在一部分?jǐn)?shù)據(jù)

/**************** 準(zhǔn)備環(huán)境********************/

--判斷是否存在test表
if object_id(N'test',N'U') is not null
drop table test

--創(chuàng)建test表
create table test
(
id int not null,
name varchar(20) not null
)

--插入臨時(shí)數(shù)據(jù)
insert into test values (1,'成龍')
insert into test values (3,'章子怡')
insert into test values (4,'劉若英')
insert into test values (8,'王菲')

select * from test



/**************** 實(shí)現(xiàn)更改自動(dòng)增長(zhǎng)列********************/

begin transaction

create table test_tmp
(
id int not null identity(1,1),
name varchar(20) not null
)
go

set identity_insert test_tmp on
go

if exists(select * from test)
exec(' insert into test_tmp(id, name ) select id, name from test with(holdlock tablockx)')
go

set identity_insert test_tmp off
go

drop table test
go

exec sp_rename N'test_tmp' ,N'test' , 'OBJECT'
go

commit

GO

/****************驗(yàn)證結(jié)果*****************/
insert into test values ('張曼')
select * from test

總結(jié):在表設(shè)計(jì)界面修改最為簡(jiǎn)單。如果該列已有的數(shù)據(jù)中存,修改可能會(huì)引發(fā)異常,可以使用數(shù)據(jù)導(dǎo)入導(dǎo)出的方式解決??傊?,不管使用何種方式,都需求提前對(duì)數(shù)據(jù)做好備份。

相關(guān)文章

  • SQL?Server數(shù)據(jù)庫(kù)死鎖的原因及處理方法

    SQL?Server數(shù)據(jù)庫(kù)死鎖的原因及處理方法

    SQL Server數(shù)據(jù)庫(kù)死鎖是指兩個(gè)或多個(gè)事務(wù)相互等待對(duì)方持有的資源,從而導(dǎo)致它們都無(wú)法繼續(xù)執(zhí)行的情況,下面這篇文章主要給大家介紹了關(guān)于SQL?Server數(shù)據(jù)庫(kù)死鎖的原因及處理方法,需要的朋友可以參考下
    2024-08-08
  • ODBC連接數(shù)據(jù)庫(kù)以SQLserver為例圖文詳解

    ODBC連接數(shù)據(jù)庫(kù)以SQLserver為例圖文詳解

    開(kāi)放數(shù)據(jù)庫(kù)互連(ODBC)是微軟提出的數(shù)據(jù)庫(kù)訪問(wèn)接口標(biāo)準(zhǔn),開(kāi)放數(shù)據(jù)庫(kù)互連定義了訪問(wèn)數(shù)據(jù)庫(kù)的API一個(gè)規(guī)范,這些API獨(dú)立于不同廠商的DBMS,也獨(dú)立于具體的編程語(yǔ)言,下面這篇文章主要給大家介紹了關(guān)于ODBC連接數(shù)據(jù)庫(kù)以SQLserver為例的相關(guān)資料,需要的朋友可以參考下
    2023-05-05
  • Synology 群輝NAS安裝及安裝mssql的方法

    Synology 群輝NAS安裝及安裝mssql的方法

    文章介紹了在Synology群輝NAS上安裝和配置Microsoft SQL Server 2019的方法,包括使用Docker和docker-compose,作者分享了詳細(xì)的步驟和注意事項(xiàng),幫助開(kāi)發(fā)者在群輝NAS上成功安裝并運(yùn)行SQL Server,感興趣的朋友一起看看吧
    2025-02-02
  • SQL里類(lèi)似SPLIT的分割字符串函數(shù)

    SQL里類(lèi)似SPLIT的分割字符串函數(shù)

    SQL對(duì)字符串的處理能力比較弱,比如我要循環(huán)遍歷象1,2,3,4,5這樣的字符串,如果用數(shù)組的話,遍歷很簡(jiǎn)單,但是T-SQL不支持?jǐn)?shù)組,所以處理下來(lái)比較麻煩。下邊的函數(shù),實(shí)現(xiàn)了象數(shù)組一樣去處理字符串。
    2011-04-04
  • sql server 創(chuàng)建臨時(shí)表的使用說(shuō)明

    sql server 創(chuàng)建臨時(shí)表的使用說(shuō)明

    這篇文章主要介紹了sql server 創(chuàng)建臨時(shí)表的使用說(shuō)明,需要的朋友可以參考下
    2015-11-11
  • 淺述SQL Server的聚焦強(qiáng)制索引查詢條件和Columnstore Index

    淺述SQL Server的聚焦強(qiáng)制索引查詢條件和Columnstore Index

    本文主要講了強(qiáng)制使用索引條件來(lái)進(jìn)行查詢,當(dāng)對(duì)于使用默認(rèn)創(chuàng)建索引進(jìn)行查詢計(jì)劃時(shí)覺(jué)得不是最優(yōu)解,可以嘗試使用強(qiáng)制索引來(lái)進(jìn)行對(duì)比找出更好得解決方案。簡(jiǎn)短的內(nèi)容,深入的理解.有興趣的朋友可以看下
    2016-12-12
  • 詳解安裝sql2012出現(xiàn)錯(cuò)誤could not open key...解決辦法

    詳解安裝sql2012出現(xiàn)錯(cuò)誤could not open key...解決辦法

    這篇文章主要介紹了詳解安裝sql2012出現(xiàn)錯(cuò)誤could not open key...解決辦法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • SqlServer高版本數(shù)據(jù)備份還原到低版本

    SqlServer高版本數(shù)據(jù)備份還原到低版本

    這篇文章主要為大家詳細(xì)介紹了SqlServer高版本數(shù)據(jù)備份還原到低版本的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • sql基本函數(shù)大全

    sql基本函數(shù)大全

    sql基本函數(shù)大全...
    2007-03-03
  • SQL Server誤區(qū)30日談 第13天 在SQL Server 2000兼容模式下不能使用DMV

    SQL Server誤區(qū)30日談 第13天 在SQL Server 2000兼容模式下不能使用DMV

    對(duì)于兼容模式已經(jīng)存在了很多誤解。80的兼容模式的數(shù)據(jù)庫(kù)是否意味著能夠附加或恢復(fù)到SQL Server 2000數(shù)據(jù)庫(kù)?當(dāng)然不是
    2013-01-01

最新評(píng)論

雷州市| 丰城市| 融水| 临海市| 余庆县| 聂荣县| 丹凤县| 沂南县| 敖汉旗| 通城县| 吉木乃县| 大姚县| 铁岭县| 沾化县| 安西县| 正蓝旗| 富裕县| 淮阳县| 莱芜市| 临朐县| 乳山市| 宁蒗| 嘉义市| 腾冲县| 湄潭县| 张家口市| 蛟河市| 吐鲁番市| 石渠县| 德安县| 台中市| 郴州市| 舒兰市| 浦城县| 扎囊县| 阜康市| 普兰店市| 泰兴市| 广东省| SHOW| 清苑县|