TSQLを使用してSQL Server上にデータベースが存在するかどうかを確認する理想的な方法は何ですか?これを実装するには複数のアプローチが必要です。 MicrosoftのスクリプトからデータベースがSQL Serverに存在するかどうかを確認する方法?
203
A
答えて
116
:あなたは、このツールへのアクセス権を持っている場合、私はお勧めは、さまざまな「スクリプトで再生を開始するように、ところで
DECLARE @dbname nvarchar(128)
SET @dbname = N'Senna'
IF (EXISTS (SELECT name
FROM master.dbo.sysdatabases
WHERE ('[' + name + ']' = @dbname
OR name = @dbname)))
-- code mine :)
PRINT 'db exists'
31
IF EXISTS (SELECT name FROM master.sys.databases WHERE name = N'YourDatabaseName')
Do your thing...
が、これは、SQL Serverのメーカーから直接来ましたxxxx AS "の機能を利用できます。あなたの人生を楽にしてくれるでしょう! :)
+2
'USE [Master]'が不便な場合は、任意のデータベースから直接ビュービューに「master.sys.databases」というアドレスを割り当てることができます – ProfK
416
実際にそれが使用することをお勧めします:
if db_id('dms') is not null
--code mine :)
print 'db exists'
は、私はエドゥアルドの答え@好きで、私は受け入れ答えを言っていhttps://docs.microsoft.com/en-us/sql/t-sql/functions/db-id-transact-sql
3
を参照してください。私はこのようなものからブール値を取り戻すのが好きなので、皆さんのために書きました。
CREATE FUNCTION dbo.DatabaseExists(@dbname nvarchar(128))
RETURNS bit
AS
BEGIN
declare @result bit = 0
SELECT @result = CAST(
CASE WHEN db_id(@dbname) is not null THEN 1
ELSE 0
END
AS BIT)
return @result
END
GO
今、あなたはこのようにそれを使用することができます。Microsoftのスクリプトからのものであってもよい
select [dbo].[DatabaseExists]('master') --returns 1
select [dbo].[DatabaseExists]('slave') --returns 0
関連する問題
- 1. mysqlデータベースが存在するかどうかを確認する方法
- 2. SQL Server:データベースがシステムデータベースであるかどうかを確認する方法
- 3. データベースロールがSQL Serverに存在するかどうかを確認する方法を教えてください。
- 4. アイテムがSQL Server CEに存在するかどうかを確認する最も良い方法は?
- 5. vb.netとSQL Serverを使用してレコードが存在するかどうかを確認する方法
- 6. 現在アクティビティインスタンスが存在するかどうかを確認する方法
- 7. windowsstore appにファイルが存在するかどうかを確認する方法
- 8. Selenium - リストボックスにテキストが存在するかどうかを確認する方法
- 9. アイテムがCache(System.Web.Cache)に存在するかどうかを確認する方法?
- 10. 通知が既に存在するかどうかを確認する方法?
- 11. Javascript:Webページにテキストが存在するかどうかを確認する方法
- 12. アクティビティがアンドロイドに存在するかどうかを確認する方法
- 13. ワークシートがExcelファイルに存在するかどうかを確認する方法
- 14. データベースにレコードが存在するかどうかを確認する
- 15. データが存在するかどうかを確認するその他SQL Serverのリンクサーバーに挿入する
- 16. データベースに特定の日付がすでに存在するかどうかを確認する方法
- 17. Cassandraテーブルが存在するかどうかを確認する方法
- 18. メモリマップファイルが存在するかどうかを確認する方法は?
- 19. PECL拡張が存在するかどうかを確認する方法は?
- 20. フラグメントが存在するかどうかを確認する方法?
- 21. CloudBlobDirectoryが存在するかどうかを確認する方法は?
- 22. ディープアレイ値が存在するかどうかを確認する方法
- 23. レジストリキーが存在するかどうかを確認する方法
- 24. Ruby on Rails:モデルが存在するかどうかを確認する方法
- 25. ファイル+フォルダツリーが存在するかどうかを確認する方法
- 26. AlbumArtが存在するかどうかを確認する方法は?
- 27. GraphicsEnvironmentが存在するかどうかを確認する方法
- 28. ページが存在するかどうかを確認する方法?
- 29. プロパティが存在するかどうかを確認する方法?
- 30. クラスが存在するかどうかを確認する方法
が、それはMicrosoftが練習をお勧めしません。システムテーブルに直接アクセスするのではなく、INFORMATION_SCHEMAビューの使用を推奨します。 – mwigdahl
は "存在しない"だけ存在するべきではありません –
なぜテーブルへの参照を直接使用するのではなくINFORMATION_SCHEMAを使用することを推奨しますか? – eKek0