6
A
答えて
7
これはあなたの探しているものをカバーする必要があります。つまり、ヒープ(クラスタ化されたインデックスなし)で、クラスタ化されていないインデックスを持たないテーブルです。それは新しいsysを使用します。 2005/2008で使用されたテーブルオブジェクト。加えて
は、おそらくこれは私がコメントアウト残してきた文の第二の部分である(クラスタ化インデックスを持っているテーブルを探したいのですが、何の非クラスタ化インデックスを持っていません。
SELECT
schemaname = OBJECT_SCHEMA_NAME(o.object_id)
,tablename = o.NAME
FROM sys.objects o
INNER JOIN sys.indexes i ON i.OBJECT_ID = o.OBJECT_ID
-- tables that are heaps without any nonclustered indexes
WHERE (
o.type = 'U'
AND o.OBJECT_ID NOT IN (
SELECT OBJECT_ID
FROM sys.indexes
WHERE index_id > 0
)
)
-- OR
-- table that have a clustered index without any nonclustered indexes
--(o.type='U'
-- AND o.OBJECT_ID NOT IN (
-- SELECT OBJECT_ID
-- FROM sys.indexes
-- WHERE index_id>1))
4
select shema = s.name, table_name = o.name
from sys.objects o
join sys.schemas s on o.schema_id = s.schema_id
where type = 'U'
and not exists (select i.index_id
from sys.indexes i
where i.type <> 0 --ignore default heap index row
and o.object_id = i.object_id)
編集:
私が要求されるようにスキーマ名が含まれるようにSQLを更新しました。 this link.
This FAQは、より多くのサンプルが含まれている参照、
カタログ表は、SQL Serverのマニュアルに記載されています(私はSQL 2005で導入されたスキーマに対応するために代わりにsysobjectsのsys.objectsに持っていた注意してください)と有用かもしれない。
これらはシステムテーブルであり、可能であればInformation Schema Viewsというシステムテーブルに依存しないビューを使用することができます。
4
@Philip Fourieの提案に加えて、作成するインデックスについて考えてみたいかもしれません。
データにアクセスすると、SQL Server 2008はインデックスが役立つと思われる場所を追跡します(これは、「欠落しているインデックス」と呼ばれます)。新しい動的管理ビューでは、これらの不足しているインデックスとそれらについていくつかの情報
MSSQlTipsから:。
- sys.dm_db_missing_index_detailsは - 不足しているインデックス
- sys.dm_db_missing_index_group_sに関する詳細な情報を返します。 tatsの - インデックスグループ
- sys.dm_db_missing_index_groupsが欠落に関する概要情報を返します - 欠落しているインデックスの特定のグループ
- sys.dm_db_missing_index_columns(index_handle)に関する情報を返します - インデックスのために不足しているデータベーステーブルの列に関する情報を返します。これは関数であり、index_handleを渡す必要があります。
5
ここに例があります:
select SCHEMA_NAME(schema_id), name from sys.tables
where OBJECTPROPERTY(object_id, 'IsIndexed')= 0
関連する問題
- 1. SQL Server 2008のアセンブリのリスト
- 2. SQL Server 2008の親、子テーブル
- 3. sql server 2008 - t-sqlがテーブルの列名を認識しない
- 4. SQL Server 2008無効な列インデックス0
- 5. SQL Server 2008のパーティションアライメントされたインデックス
- 6. SQLテーブルへの更新、インデックスなし
- 7. SQL Server 2008のテーブルの階層削除
- 8. SQL Server 2008でのテーブル型の問題
- 9. テーブルが値なしのテーブルであるSQL Server 2008 MERGE
- 10. SQL Server 2008からSQL Azureへのインデックスの移行
- 11. SQL Server 2008 ExpressとVFPテーブルの同期
- 12. SQL Server 2008のトリガー作成テーブル
- 13. テーブル - 編集モード(Sql 2008)
- 14. テーブル値パラメータ、SQL Server 2008
- 15. 奇妙な行動のSQL Server 2008 Management Studioのテーブルやプロシージャ
- 16. インデックスを作成するSQL Server 2008
- 17. インデックスを持たないテーブルのSQL Server物理データレイアウト
- 18. は、私は4つのテーブル持っているSQL Server 2008の
- 19. Oracle SQLのテーブルとインデックスの統計
- 20. xp_cmdshellなしでCSVにSQL Server 2008 R2テーブルの内容をエクスポート
- 21. 集計のないSQL Server 2008ピボット
- 22. SQL Azure/SQL Server 2008のテーブルをmysqlから作成
- 23. インデックス付きのSQL Serverテーブル同義語
- 24. SQL - 内部結合テーブルの複合インデックス?
- 25. すべて緯度15キロ以内のSQLテーブルのLat Lng異なるテーブル-SQLの各緯度1 ng 2008
- 26. クラスタ化インデックス上のSQL ServerでDELETEのパフォーマンス、大きなテーブル
- 27. SQL Server 2008の
- 28. SQL Server 2008の
- 29. SQL Server 2008の
- 30. - SQL Server 2008の
これらのオブジェクトのスキーマを取得するにはどうすればいいですか? –
これらは2005/2008でも '互換性'ビューとして有効です。私は2005/2008のシステムオブジェクトを使用して私自身のバージョンを投稿しました –
@Rajもっと、私は要求通りにスキーマ名で私の答えを更新しました –