【甯傚牬(ch菐ng)鍕?d貌ng)鎱?t脿i)】…………………………………………………………………………………………>>> |
|
MSSQL查看⼀個數據庫中所有表的⾏數 |
|
一、MSSQL查看⼀個數據庫中所有表的⾏數    SELECT   a.name, b.rows    FROM      sysobjects AS a INNER JOIN    sysindexes AS b ON a.id = b.id    WHERE   (a.type = ’u’) AND (b.indid IN (0, 1))    ORDER BY b.rows DESC   
二、SQL Server,基本上現在仍有在使用的最古老的版本是SQL Server 2000(沒有發現用7及以前的),從SQL Server 2000開始,到SQL Server 2005,2008,2012等,T-SQL的處理能力越來越強。如何使用T-SQL腳本來刪除表、以及刪除表中的數據呢?  
刪除表和刪除表數據這是兩回事!刪除表表示不管表中有沒有數據,將該數據庫表徹底抹去,不留下任何東西。而刪除表數據,只是刪除表中的數據行,而表結果依然存在,還可以往表中插入新的數據。   
刪除表的T-SQL語句為:    drop table <表名>    drop是丟棄的意思,drop table表示將一個表徹底刪除掉。   
刪除表數據有兩種方法:delete和truncate。   
delete的用法如下:    delete from <表名> [where條件]   
truncate的用法如下:    truncate table <表名>   
delete和truncate的區別如下:    1、delete可以刪除表中的一條或多條數據,也可以刪除全部數據;而truncate只能將表中的全部數據刪除。    2、delete刪除表數據后,標識字段不能復用。也就是說如果你把id=10(假如id是標識字段)的那行數據刪除了,你也不可能再插入一條數據讓id=10.    3、truncate刪除表數據后,標識重新恢復初始狀態。默認為初始值為1,也就是說,truncate之后,再插入一條數據,id=1.  
三、MSSQL根據值查找表和字段   
DECLARE @value  VARCHAR(1024)    set @value=’需要查找的字符串’  SET NOCOUNT ON     DECLARE @sql VARCHAR(1024)    DECLARE @table VARCHAR(64)    DECLARE @column VARCHAR(64)    CREATE TABLE #t    (          tablename VARCHAR(64),        columnname VARCHAR(64)    )     DECLARE TABLES CURSOR FOR    SELECT o.name, c.name     FROM syscolumns c INNER JOIN sysobjects o ON c.id = o.id    WHERE o.type = ’U’ AND c.xtype IN (167, 175, 231, 239)    ORDER BY o.name, c.name    OPEN TABLES     FETCH NEXT FROM TABLES     INTO @table, @column     WHILE @@FETCH_STATUS = 0    BEGIN           SET @sql = ’IF EXISTS ( SELECT NULL FROM [’ + @table + ’] ’         SET @sql = @sql + ’WHERE RTRIM(LTRIM([’ + @column + ’])) LIKE ’’%’ + @value + ’%’) ’        SET @sql = @sql + ’INSERT INTO #t VALUES (’’’ + @table + ’’’, ’’’        SET @sql = @sql + @column + ’’’)’        EXEC(@sql)         FETCH NEXT FROM TABLES     INTO @table, @column    END     CLOSE TABLES    DEALLOCATE TABLES    SELECT *FROM #t    DROP TABLE #t     
-   MySQL刪除表數據 MySQL清空表命令 3種方法    1、MySQL清空表數據命令:truncate    SQL語法:    truncate table 表名    注意:    不能與where一起使用。    truncate刪除數據后是不可以rollback的。    truncate刪除數據后會重置Identity(標識列、自增字段),相當于自增列會被置為初始值,又重新從1開始記錄,而不是接著原來的ID數。    truncate刪除數據后不寫服務器log,整體刪除速度快。    truncate刪除數據后不激活trigger(觸發器)。    2、MySQL刪除表命令:drop    SQL語法:    drop table 表名    或者是    drop table if exists 表名    注意:    truncate只會清除表數據,drop不光清除表數據還要刪除表結構。    3、MySQL清空數據表內容的語法:delete    SQL命令:    delete from 表名 where id=’1’    或    delete from 表名    注意:    delete含義:你要刪除哪張表的數據 ?你要刪掉哪些行 ?    delete可以刪除一行,也可以刪除多行;    如果不加where條件,則是刪除表所有的數據,這是很危險的!不建議這樣做!    總結:    1、當你不再需要該表時, 用 drop    2、當你仍要保留該表,但要刪除所有數據表記錄時, 用 truncate    3、當你要刪除部分記錄或者有可能會后悔的話, 用 delete。  |
發布時間:2022/5/16
閱讀:3267次 來源: |
|
|
|
|