1

SQLServer2000ですべてのテーブルとその合計行数を取得する予定です。

私がしたこと:

sp_msforeachtable 'select count(*) from ?' 

この列ヘッダーでは言及されていません。そのため、どの行数がどのテーブルに属しているかを区別できません。

私はこれを次のように変更しました:

sp_msforeachtable 'select count(*) as ? from ?' 

しかし、次のようにエラーをスローします:

Msg 170, Level 15, State 1, Line 1
Line 1: Incorrect syntax near '.'.

これについてご案内いただけますか

4

3 に答える 3

3

これを試して:

SELECT
    sysobjects.Name, sysindexes.Rows
FROM
    sysobjects
    INNER JOIN sysindexes
    ON sysobjects.id = sysindexes.id
WHERE
    type = 'U'
    AND sysindexes.IndId < 2
于 2013-01-08T10:36:32.393 に答える
3

私はそれを手に入れたと思います:

exec sp_MSforeachtable 'select count(*) as nr_of_rows, ''?'' 
  as table_name from ?'
于 2013-01-08T10:37:34.237 に答える
0

代わりにこれを試してください:

sp_MSforeachtable 'select ''?'' Tablename, count(*) ''Rows'' from ?'
于 2013-01-08T10:39:10.460 に答える