1樓:仙戈雅
工程量會很大。步驟是找到某表的外來鍵有那些,然後主鍵修改後緊接著修改它的外來鍵裡對應的表的值。
2樓:sql的藝術
思路:1、首先搞清楚所有表的主外來鍵關係
2、取消全部表的主鍵自增標識列,方便你後續的直接修改id
例如:exec sp_configure 'allow updates',1
reconfigure with override
go----取消標識列標記
update syscolumns set colstat = 0 where id = object_id('表名') and colstat = 1
go----恢復標識列標記
update syscolumns set colstat = 1 where id = object_id('表名') and name = '標識列名稱'
3、寫個sql指令碼,修改id,在修改的時候,一併更新全部表裡的此id值
例如:declare @old_id as int,@new_id as int
select @old_id=12,@new_id=123
update 表名1 set id=@new_id where id=@old_id
update 表名2 set id=@new_id where id=@old_id
update 表名3 set id=@new_id where id=@old_id
.....
update 表名n set id=@new_id where id=@old_id
3樓:危思厹
你是要修改資料庫裡面, 某個表的 自動遞增列的 開始id ?
那你那個表裡面, 當前有沒有資料?
如果已經有資料了, 你再從1開始, 那後面就要出錯了。
如果表是空表, 沒有資料的, 那麼可以
truncate table 表名字通過徹底清空 指定表的方式, 來重置那個 自動遞增的當期值為 1注:以上處理方式
對於 sql server 資料庫的 identity (1,1)或者 mysql 的 auto_increment 是有效的。
如果是 oracle 資料庫的話, 你可能需要去重新建立序列號物件。
4樓:yaphets丶飛
解決了嗎?我也遇到了這樣的問題?解決了可以告訴我下嗎?
access資料庫中的id號怎麼修改**
5樓:襲綸孛珍
access資料庫中表的自動編號是不能修改的。如果斷號了,可以刪除欄位後,儲存,再重建id欄位。
如何操作才能修改資料庫表中的id
6樓:匿名使用者
可以通過update(更新)復語句制實現給該記錄操作。sql:update tablename set username ='zhangsan' where id =5;
解釋:因為
bai改變的du是某條記錄,所以必定有where條件來zhi限定到此條語dao
句,上面的舉例就是通過id的唯一性先確定此條記錄,之後通過update將tablename表中的username欄位值進行更新。
求oracle修改資料庫欄位長度sql
2個辦法 1.使用備份表 a.create table test as select from a b.drop table a c.create table a 將ddd欄位改為char 20 d.insert into a select from test e.drop table test2....
我想修改資料庫sql表中id,怎樣讓它從1開始呢
千鋒教育 update tablename set id rownum 對於rownum來說它是oracle系統順序分配為從查詢返回的行的編號,返回的第一行分配的是1,第二行是2,依此類推,這個偽欄位可以用於限制查詢返回的總行數,且rownum不能以任何表的名稱作為字首。 你是要修改資料庫裡面,某個...
如何修改sqlserver預設建立資料庫的路徑
直接使用sql語句修改 use master goexec xp instance regwrite n hkey local machine n software microsoft mssqlserver mssqlserver n defaultdata reg sz,n f database...