国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > SQL Server > 正文

sql 2000清空后讓表的id從1開始等數據庫操作

2024-08-31 00:44:43
字體:
來源:轉載
供稿:網友
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]}]…]
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 托克托县| 金堂县| 三江| 榆中县| 怀化市| 永登县| 延川县| 曲水县| 吉安市| 凤阳县| 乐山市| 巍山| 台北县| 海林市| 浦江县| 双流县| 武穴市| 丰宁| 富民县| 册亨县| 宜宾市| 孝义市| 巨鹿县| 阳高县| 西昌市| 长岛县| 永胜县| 文成县| 紫云| 本溪市| 正镶白旗| 安岳县| 镇雄县| 南木林县| 营口市| 雅安市| 和林格尔县| 云浮市| 城步| 黔南| 莱西市|