您好,登錄后才能下訂單哦!
如何理解sql 2000清空后讓表的id從1開始等數據庫操作,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
truncate table 表名 ( 數據不可恢復性的刪除 truncate 標識列會重排 ) LinqUtil.Db.ExecuteCommand("TRUNCATE TABLE warehousing"); //warehousing為表名,此種刪除效率更高,且會清空計數器,但是有外鍵的表則不能用,可以通過刪除外鍵后使用 LinqUtil.Db.ExecuteCommand("delete ioinfo"); //因為此種刪除不能清空計數器,所以下面還的清空 LinqUtil.Db.ExecuteCommand("dbcc checkident(ioinfo,reseed,0)"); //清空計數器,ioinfo為表名 LinqUtil.Db.SubmitChanges(); 清空表后執行 DBCC CHECKIDENT(表名,reseed,起始值) 如: 你要把表 Employee 的ID清空后從1開始 DBCC CHECKIDENT(Employee,reseed,0)--你添加了一條數據,從起始值開始加1 ------------------------------------------------------------------------------------- 使用SQL語句清空數據庫所有表的數據 近來發現數據庫過大,空間不足,因此打算將數據庫的數據進行全面的清理,但表非常多,一張一張的清空,實在麻煩,因此就想利用SQL語句一次清空所有數據.找到了三種方法進行清空.使用的數據庫為MS SQL SERVER. 1.搜索出所有表名,構造為一條SQL語句復制代碼 代碼如下: declare @trun_name varchar(8000) set @trun_name='' select @trun_name=@trun_name + 'truncate table ' + [name] + ' ' from sysobjects where xtype='U' and status > 0 exec (@trun_name)
該方法適合表不是非常多的情況,否則表數量過多,超過字符串的長度,不能進行完全清理. 2.利用游標清理所有表復制代碼 代碼如下: declare @trun_name varchar(50) declare name_cursor cursor for select 'truncate table ' + name from sysobjects where xtype='U' and status > 0 open name_cursor fetch next from name_cursor into @trun_name while @@FETCH_STATUS = 0 begin exec (@trun_name) print 'truncated table ' + @trun_name fetch next from name_cursor into @trun_name end close name_cursor deallocate name_cursor
這是我自己構造的,可以做為存儲過程調用, 能夠一次清空所有表的數據,并且還可以進行有選擇的清空表. 3.利用微軟未公開的存儲過程 exec sp_msforeachtable "truncate table ?" 該方法可以一次清空所有表,但不能加過濾條件. ----------------------------------------------------------------------------- 清空表sql語句 可以使用delete清空表 DELETE FROM t表名 也可以使用truncate命令 truncate table 表名 CREATE TABLE 表名 [表約束] (列名1 數據類型 [缺省值1,列約束1] (列名2 數據類型 [缺省值2,列約束2] … 列名n 數據類型 [缺省值n,列約束n] [TABLESPACE 表空間名稱] [STORAGE (存貯的子句)] [ENABLE 約束名] [DISABLE 約束名] ? 插入數據 INSERT INTO 表名[(列名1,…)] VALUES(值1,值2,…,值n) ? 修改數據 UPDATE 表名SET 列名1=表達式1,列名2=表達式2,… WHERE 條件; ? 刪除數據 刪除表中已有數據,不能刪除不存在的數據。 語句句法: DELETE FROM 表名 WHERE 條件; ? 表結構的修改 在已存在的表中增加新列,語句句法: ALTER TABLE 表名 ADD(新列名 數據類型(長度)); 例如: ALTER TABLE STUDENT ADD (DEPARTMENT CHAR(8)); b.增加已有列的數據類型。 例如: ALTER TABLE STUDENT MODIFY(NAME VARCHAR2(25)); ? 表的刪除 將已經存在的表刪除,語句句法: DROP TABLE表名; 例如: DROP TABLE EMP; ? 查詢語句 SELECT命令的語法為: SELECT [DISTINCT|ALL] {*|模式名.] {表名|視圖名| 快照名] .*…| {表達式[列別名]…} } [, [模式名. ] {表名| 視圖名|} .*…| 表達式[列別名] ]… FROM [模式名.] {表名|視圖名|快照名} [@數據庫鏈名] [表別名] [, [模式名.] {表名|視圖名|快照名} [@數據庫鏈名] [表別名] ]… [WHERE條件] [START WITH條件 CONNECT BY 條件] [GROUP BY表達式[,表達式] …[HAVING條件] [UNION|UNION ALL |INTERSECT|MINUS]SELECT命令 [ORDER BY{表達式|位置} [ASC|DESC] [, {表達式|位置[ASC|DESC]}]…]
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。