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

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

21
SQL ServerでのINSERT OR UPDATEのソリューション
のテーブル構造を想定しますMyTable(KEY, datafield1, datafield2...)。 多くの場合、既存のレコードを更新するか、存在しない場合は新しいレコードを挿入します。 基本的に: IF (key exists) run update command ELSE run insert command これを書くのに最も良い方法は何ですか?

23
SQL ServerテーブルのINSERTステートメントを自動生成する最良の方法は何ですか?
新しいアプリケーションを作成しており、テスト中は、たくさんのダミーデータが必要になります。MS Accessを使用してExcelファイルを関連するテーブルにダンプすることにより、そのデータを追加しました。 多くの場合、関連するテーブルを "更新"する必要があります。つまり、すべてのテーブルを削除し、再作成して、保存されたMS Access追加クエリを実行します。 最初の部分(ドロップと再作成)は簡単なSQLスクリプトですが、最後の部分は私を不快にさせます。ダミーデータを再生成するために、多数のINSERTを含む単一のセットアップスクリプトが必要です。 テーブルにデータがあります。そのデータセットからINSERTステートメントの大きなリストを自動的に生成する最良の方法は何ですか? 私が考えられる唯一の方法は、テーブルをExcelシートに保存してから、Excel式を記述してすべての行にINSERTを作成することです。これは確かに最良の方法ではありません。 2008 Management Studioを使用してSQL Server 2005データベースに接続しています。

4
SQL Serverのデータ型に相当するC#
次のSQL Serverデータ型の場合、C#の対応するデータ型は何ですか? 正確な数値 bigint numeric bit smallint decimal smallmoney int tinyint money おおよその数値 float real 日時 date datetimeoffset datetime2 smalldatetime datetime time 文字列 char varchar text Unicode文字列 nchar nvarchar ntext バイナリ文字列 binary varbinary image その他のデータ型 cursor timestamp hierarchyid uniqueidentifier sql_variant xml table (ソース:MSDN)
594 c#  .net  sql-server 



10
楽観的ロックと悲観的ロック
楽観的ロックと悲観的ロックの違いを理解しています。どちらを一般的に使用するかを誰かに説明してもらえますか? そして、この質問に対する答えは、クエリを実行するためにストアドプロシージャを使用しているかどうかによって異なりますか? しかし、チェックするだけで、楽観的とは「読み取り中にテーブルをロックしない」ことを意味し、悲観的とは「読み取り中にテーブルをロックする」ことを意味します。

24
SQL Server:データベースが「復元中」の状態のまま
データベースをバックアップしました: BACKUP DATABASE MyDatabase TO DISK = 'MyDatabase.bak' WITH INIT --overwrite existing そしてそれを復元しようとしました: RESTORE DATABASE MyDatabase FROM DISK = 'MyDatabase.bak' WITH REPLACE --force restore over specified database そして今、データベースは復元状態でスタックしています。 一部の人々は、バックアップにログファイルがなく、次のようにしてロールフォワードする必要があるためと考えています。 RESTORE DATABASE MyDatabase WITH RECOVERY もちろんそれ以外は失敗します: Msg 4333, Level 16, State 1, Line 1 The database cannot be recovered because the …


11
存在しないか存在しない
これらのクエリのどれが高速ですか? 存在しません: SELECT ProductID, ProductName FROM Northwind..Products p WHERE NOT EXISTS ( SELECT 1 FROM Northwind..[Order Details] od WHERE p.ProductId = od.ProductId) またはない: SELECT ProductID, ProductName FROM Northwind..Products p WHERE p.ProductID NOT IN ( SELECT ProductID FROM Northwind..[Order Details]) クエリ実行プランは、両方が同じことを行うと言います。その場合、どちらがお勧めのフォームですか? これは、NorthWindデータベースに基づいています。 [編集] この役立つ記事を見つけました:http : //weblogs.sqlteam.com/mladenp/archive/2007/05/18/60210.aspx NOT EXISTSに固執すると思います。
538 sql  sql-server  notin 

15
ステートメントの「INSERT INTO…」の部分を繰り返さずに複数の行を挿入しますか?
私は数年前にこれを行ったことを知っていますが、構文を思い出せず、大量のヘルプドキュメントや「バルクインポート」に関する記事が表示されるため、どこにあるかわかりません。 これが私がしたいことですが、構文は正確ではありません...以前にこれを行ったことがある人、私を助けてください:) INSERT INTO dbo.MyTable (ID, Name) VALUES (123, 'Timmy'), (124, 'Jonny'), (125, 'Sally') これは正しい構文に近いことを知っています。そこに「BULK」という言葉が必要かもしれませんが、覚えていません。何か案が? SQL Server 2005データベースにはこれが必要です。私はこのコードを試しましたが、役に立ちませんでした: DECLARE @blah TABLE ( ID INT NOT NULL PRIMARY KEY, Name VARCHAR(100) NOT NULL ) INSERT INTO @blah (ID, Name) VALUES (123, 'Timmy') VALUES (124, 'Jonny') VALUES (125, 'Sally') SELECT * FROM …


23
SQL Serverで日時の時間部分を削除する最善の方法
SQL Serverの日時フィールドから時間部分を削除するときに、どの方法が最高のパフォーマンスを提供しますか? a) select DATEADD(dd, DATEDIFF(dd, 0, getdate()), 0) または b) select cast(convert(char(11), getdate(), 113) as datetime) 2番目の方法は、どちらの方法でも数バイトを送信しますが、変換の速度ほど重要ではない場合があります。 どちらも非常に高速に見えますが、数十万行以上を処理するときに速度に違いがあるのではないでしょうか。 また、SQLの日時の時間部分を取り除くためのさらに優れた方法がある可能性はありますか?
514 sql  sql-server  tsql  datetime  date 


29
SQL Serverには、.NETのMath.Maxのような2つの値をとるMax関数はありますか?
Наэтотвопросестьответына スタックオーバーフローнарусском:ПоискмаксимуманаSQL Serverのкотораяпринимаетнавходдвазначениякаквネット? 私はこのようなクエリを書きたいです: SELECT o.OrderId, MAX(o.NegotiatedPrice, o.SuggestedPrice) FROM Order o しかし、これはMAX関数が機能する方法ではありませんよね?これは集約関数であるため、単一のパラメーターを想定し、すべての行のMAXを返します。 誰か私のやり方で知っていますか?
488 sql  sql-server  max 

24
バックアップセットは、既存のデータベース以外のデータベースのバックアップを保持します。
データベースのSQL Serverバックアップファイルを復元しようとしていますが、次のようにエラーがスローされます。 バックアップセットは、既存のデータベース以外のデータベースのバックアップを保持します。 SQL Server 2008のデータベースとバックアップファイルは2005年のものです。 何が問題なのでしょうか?
485 sql-server 

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