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

首頁 > 數(shù)據(jù)庫 > SQL Server > 正文

sql 2000清空后讓表的id從1開始等數(shù)據(jù)庫操作

2020-07-25 13:11:54
字體:
供稿:網(wǎng)友
truncate table 表名 (
數(shù)據(jù)不可恢復(fù)性的刪除 truncate 標(biāo)識列會重排 )
LinqUtil.Db.ExecuteCommand("TRUNCATE TABLE warehousing"); //warehousing為表名,此種刪除效率更高,且會清空計數(shù)器,但是有外鍵的表則不能用,可以通過刪除外鍵后使用
LinqUtil.Db.ExecuteCommand("delete ioinfo"); //因?yàn)榇朔N刪除不能清空計數(shù)器,所以下面還的清空
LinqUtil.Db.ExecuteCommand("dbcc checkident(ioinfo,reseed,0)"); //清空計數(shù)器,ioinfo為表名
LinqUtil.Db.SubmitChanges();
清空表后執(zhí)行
DBCC CHECKIDENT(表名,reseed,起始值)
如:
你要把表 Employee 的ID清空后從1開始
DBCC CHECKIDENT(Employee,reseed,0)--你添加了一條數(shù)據(jù),從起始值開始加1
-------------------------------------------------------------------------------------
使用SQL語句清空數(shù)據(jù)庫所有表的數(shù)據(jù)
近來發(fā)現(xiàn)數(shù)據(jù)庫過大,空間不足,因此打算將數(shù)據(jù)庫的數(shù)據(jù)進(jìn)行全面的清理,但表非常多,一張一張的清空,實(shí)在麻煩,因此就想利用SQL語句一次清空所有數(shù)據(jù).找到了三種方法進(jìn)行清空.使用的數(shù)據(jù)庫為MS SQL SERVER.

1.搜索出所有表名,構(gòu)造為一條SQL語句
復(fù)制代碼 代碼如下:

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)

該方法適合表不是非常多的情況,否則表數(shù)量過多,超過字符串的長度,不能進(jìn)行完全清理.

2.利用游標(biāo)清理所有表
復(fù)制代碼 代碼如下:

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

這是我自己構(gòu)造的,可以做為存儲過程調(diào)用, 能夠一次清空所有表的數(shù)據(jù),并且還可以進(jìn)行有選擇的清空表.

3.利用微軟未公開的存儲過程
exec sp_msforeachtable "truncate table ?"
該方法可以一次清空所有表,但不能加過濾條件.
-----------------------------------------------------------------------------
清空表sql語句
可以使用delete清空表
DELETE FROM t表名
也可以使用truncate命令
truncate table 表名
CREATE TABLE 表名 [表約束]
(列名1 數(shù)據(jù)類型 [缺省值1,列約束1]
(列名2 數(shù)據(jù)類型 [缺省值2,列約束2]

列名n 數(shù)據(jù)類型 [缺省值n,列約束n]
[TABLESPACE 表空間名稱]
[STORAGE (存貯的子句)]
[ENABLE 約束名]
[DISABLE 約束名]
? 插入數(shù)據(jù)
INSERT INTO 表名[(列名1,…)]
VALUES(值1,值2,…,值n)
? 修改數(shù)據(jù)
UPDATE 表名SET 列名1=表達(dá)式1,列名2=表達(dá)式2,…
WHERE 條件;
? 刪除數(shù)據(jù)
刪除表中已有數(shù)據(jù),不能刪除不存在的數(shù)據(jù)。
語句句法:
DELETE FROM 表名 WHERE 條件;
? 表結(jié)構(gòu)的修改
在已存在的表中增加新列,語句句法:
ALTER TABLE 表名 ADD(新列名 數(shù)據(jù)類型(長度));
例如:
ALTER TABLE STUDENT ADD (DEPARTMENT CHAR(8));
b.增加已有列的數(shù)據(jù)類型。
例如:
ALTER TABLE STUDENT MODIFY(NAME VARCHAR2(25));
? 表的刪除
將已經(jīng)存在的表刪除,語句句法:
DROP TABLE表名;
例如:
DROP TABLE EMP;
? 查詢語句
SELECT命令的語法為:
SELECT [DISTINCT|ALL] {*|模式名.] {表名|視圖名|
快照名] .*…| {表達(dá)式[列別名]…} } [, [模式名. ] {表名|
視圖名|} .*…| 表達(dá)式[列別名] ]…
FROM [模式名.] {表名|視圖名|快照名} [@數(shù)據(jù)庫鏈名] [表別名]
[, [模式名.] {表名|視圖名|快照名} [@數(shù)據(jù)庫鏈名]
[表別名] ]…
[WHERE條件]
[START WITH條件 CONNECT BY 條件]
[GROUP BY表達(dá)式[,表達(dá)式] …[HAVING條件]
[UNION|UNION ALL |INTERSECT|MINUS]SELECT命令
[ORDER BY{表達(dá)式|位置} [ASC|DESC] [, {表達(dá)式|位置[ASC|DESC]}]…]
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 广西| 常德市| 兴义市| 汪清县| 绵阳市| 苍山县| 班戈县| 临清市| 九寨沟县| 广西| 东乌珠穆沁旗| 大理市| 克拉玛依市| 宾川县| 邵武市| 邯郸市| 富平县| 滨海县| 华阴市| 军事| 青神县| 灯塔市| 蕲春县| 伽师县| 大名县| 桐梓县| 道孚县| 凉山| 湖州市| 三门县| 淮阳县| 老河口市| 永清县| 葵青区| 南城县| 长阳| 彰化县| 云龙县| 梁平县| 桃江县| 霍州市|