查詢乙個資料庫內的所有表的行數

2021-05-22 12:12:58 字數 1157 閱讀 1128

--

這一部分是用來刪除生成的表的

use[youdatabasename] go

ifexists(

select

*from

sys.objects

where

object_id

=object_id

('dbo.tablerows'

)and

type

in( n'u')

) drop

table [dbo]. tablerows --

這裡是查詢的部分

create

table tablerows ( [name] nvarchar

( 255),

rows

bigint)

declare

@name nvarchar

( 255), @sql nvarchar

( 4000)

declare

tname cursor

for

select

[name] from sysobjects where xtype =

'u'

open

tname

fetch

next

from tname

into

@name

while

@@fetch_status

= 0

begin

set@sql=

'insert into tablerows ([name],rows) select '''

+ @name+

''' as name, count(1) as row from '

+ @name

exec

(@sql)

fetch

next

from tname into @name

endclose

tname

deallocate

tname

--這裡是顯示最後的結果

select

*from tablerows

select

sum(

rows

)from tablerows

乙個資料庫查詢的問題

有乙個表user book記錄了一名使用者擁有的書籍的資訊,表的資料如下 key userid bookid 1 1 2 2 1 3 3 1 4 4 2 1 5 2 3 這表明這名使用者1擁有2,3,4三本書,使用者2擁有1,3兩本書,以此類推。現在要用1個sql語句得到下面問題的結果 給出任意個b...

如何取得乙個資料表的所有列名

如何取得乙個資料表的所有列名 方法如下 先從systemobject系統表中取得資料表的systemid,然後再syscolumn表中取得該資料表的所有列名。sql語句如下 declare objid int,objname char 40 set objname tablename select ...

SQL 游標 查詢資料庫中的所有表的資料個數

sql語句 游標等使用 declare sql nvarchar 500 declare tablename nvarchar 100 declare iint declare jnvarchar 20 declare cstucount int 上方設定變數 set i 1 初始值 declare...