タグ付けされた質問 「sql-server」

Microsoft SQL Serverは、リレーショナルデータベース管理システム(RDBMS)です。このタグは、Compact、Express、Azure、Fast-track、APS(以前のPDW)、Azure SQL DWを含むすべてのSQL Serverエディションに使用します。他のタイプのDBMS(MySQL、PostgreSQL、Oracleなど)には、このタグを使用しないでください。データベースに直接関連している場合を除き、このタグをソフトウェアやモバイル開発の問題に使用しないでください。

3
SQL Serverインデックス-昇順または降順、どのような違いがありますか?
MS SQL Server(バージョン2005を使用しています)の列または列の数にインデックスを作成する場合、各列のインデックスが昇順または降順のいずれかになるように指定できます。なぜこの選択​​がここにもあるのか理解するのに苦労しています。バイナリソートテクニックを使用すると、ルックアップはどちらの方法でも同じくらい速くありませんか?どの順序を選択すると、どのような違いがありますか?


5
このクエリでページング(スキップ/テイク)機能を実装する
私はSQLでカスタムページングを実装する方法について少し理解しようとしています。たとえば、このような記事を読んでいます。 次のクエリがありますが、これは完全に機能します。しかし、私はこれでページングを実装したいと思います。 SELECT TOP x PostId FROM ( SELECT PostId, MAX (Datemade) as LastDate from dbForumEntry group by PostId ) SubQueryAlias order by LastDate desc 何が欲しい フォーラムの投稿と関連エントリがあります。最近追加されたエントリを含む投稿を取得したいので、最近議論された投稿を選択できます。 ここで、「トップ10」の代わりに「最近アクティブなトップ10〜20の投稿」を取得できるようにしたいと考えています。 私は何を試しましたか 私はROW関数を記事の1つとして実装しようとしましたが、実際にはうまくいきませんでした。 それを実装する方法はありますか?

5
SQLデータベースに関数が存在するかどうかを確認する方法
関数がデータベースに存在するかどうかを確認して、関数を削除して再作成できるようにする必要があります。基本的には、ストアドプロシージャに使用する次のコードのようになります。 IF EXISTS ( SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[SP_TEST]') AND OBJECTPROPERTY(id, N'IsProcedure') = 1 )


3
エスカレーションのロック-ここで何が起こっていますか?
SQL Server 2008でテーブルを変更(列を削除)しているときに、[変更スクリプトの生成]ボタンをクリックしたところ、生成された変更スクリプトによって列が削除され、 "go"と表示された後、設定されているように見える追加のALTER TABLEステートメントを実行しました。テーブルのロックエスカレーションを「TABLE」に。例: ALTER TABLE dbo.Contract SET (LOCK_ESCALATION = TABLE) また、これは変更スクリプトが実行する最後の処理であることにも注意してください。ここで何をしているのですか、なぜLOCK_ESCALATIONをTABLEに設定しているのですか?


2
MDFファイルとは?[閉まっている]
閉まっている。この質問はトピックから外れています。現在、回答を受け付けていません。 この質問を改善してみませんか? Stack Overflowのトピックとなるように質問を更新します。 8年前に閉鎖。 この質問を改善する これは、一種の「組み込み」データベースのようなものですか?組み込みデータベースを含むファイル?
137 mdf  sql-server  database  file 


7
SQL Serverデータベースで最大のオブジェクトを見つける方法は?
SQL Serverデータベースで最大のオブジェクトを見つけるにはどうすればよいですか?最初に、どのテーブル(および関連するインデックス)が最も大きいかを特定し、次に特定のテーブルのどの行が最も大きいかを決定します(BLOBにバイナリデータを格納しています)。 この種のデータベース分析を支援するためのツールはありますか?または、システムテーブルに対して実行できる簡単なクエリはありますか?

18
「マルチパート識別子」とは何ですか?なぜバインドできないのですか?
別のテーブルに基づいてテーブルを更新しようとすると、これらのエラーが頻繁に発生します。クエリを書き直して、結合の順序を変更し、いくつかのグループ化を変更すると、最終的には機能しますが、うまくいきません。 「マルチパート識別子」とは何ですか? 「マルチパート識別子」をバインドできないのはいつですか? とにかくそれは何にバインドされていますか? このエラーはどのような場合に発生しますか? それを防ぐ最善の方法は何ですか? SQL Server 2005の特定のエラーは次のとおりです。 マルチパート識別子「...」をバインドできませんでした。 次に例を示します。 UPDATE [test].[dbo].[CompanyDetail] SET Mnemonic = [dbBWKMigration].[dbo].[Company].[MNEMONIC], [Company Code] = [dbBWKMigration].[dbo].[Company].[COMPANYCODE] WHERE [Company Name] = **[dbBWKMigration].[dbo].[Company].[COMPANYNAME]** 実際のエラー: メッセージ4104、レベル16、状態1、行3マルチパート識別子「dbBWKMigration.dbo.Company.COMPANYNAME」をバインドできませんでした。
136 sql  sql-server 

4
非主キーへの外部キー
データを保持するテーブルがあり、それらの行の1つが別のテーブルに存在する必要があります。したがって、参照整合性を維持するために外部キーが必要です。 CREATE TABLE table1 ( ID INT NOT NULL IDENTITY(1,1) PRIMARY KEY, AnotherID INT NOT NULL, SomeData VARCHAR(100) NOT NULL ) CREATE TABLE table2 ( ID INT NOT NULL IDENTITY(1,1) PRIMARY KEY, AnotherID INT NOT NULL, MoreData VARCHAR(30) NOT NULL, CONSTRAINT fk_table2_table1 FOREIGN KEY (AnotherID) REFERENCES table1 (AnotherID) ) ただし、ご覧のとおり、外部キーのテーブルである列はPKではありません。この外部キーを作成する方法、またはこの参照整合性を維持するためのより良い方法はありますか?
136 sql  sql-server 

8
包括的ではない「間」のSQL
次のようなクエリがあります。 SELECT * FROM Cases WHERE created_at BETWEEN '2013-05-01' AND '2013-05-01' ただし、1日のデータがあっても結果は得られません。 created_atのよう2013-05-01 22:25:19に見えます、それは時間と関係があるのではないでしょうか?これをどのように解決できますか? 日付範囲を大きくすると問題なく機能しますが、単一の日付でも(包括的に)機能するはずです。

11
sqlcmdを使用してSQL ServerからCSV形式でデータをエクスポートする方法
次のようなテキストファイルにデータを簡単にダンプできます。 sqlcmd -S myServer -d myDB -E -Q "select col1, col2, col3 from SomeTable" -o "MyData.txt" ただし、ヘルプファイルを確認しましSQLCMDたが、CSV専用のオプションは確認していません。 を使用してテーブルからCSVテキストファイルにデータをダンプする方法はありますSQLCMDか?
136 sql-server  file  csv  sqlcmd 

4
SQL Server:CaseステートメントでUniqueIdentifierを文字列に変換する
例外スタックトレースが含まれる場合があるメッセージ列を含むログテーブルがあります。メッセージにこれがあるかどうかを判断するいくつかの基準があります。これらのメッセージをお客様に表示するのではなく、次のようなメッセージを表示します。 内部エラーが発生しました。参照コードxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxを添えてお問い合わせください ここで、xxxなどは表のGUID列です。私はこのようにストアドプロシージャを書いています: declare @exceptionCriteria nvarchar(50) select @exceptionCriteria = '%<enter criteria etc>%' select LogDate, case when Message like @exceptionCriteria then 'Internal Error Occured. Reference Code: ' + str(RequestID) else Message end from UpdateQueue RequestIDSQL ServerのGuidデータ型であり、ここでは文字列に変換されません。Guidを文字列に変換する方法に関するコードをいくつか見ましたが、それは複数行であり、caseステートメントでは機能しないと思います。何か案は?
136 sql-server  guid  case 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.