問題タブ [identity-insert]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql-server - Identity_insertONなしでリレーションシップテーブルにデータを挿入します
スクリプトを使用してマスターデータをテーブルに挿入する必要があるシナリオがあります。これにより、展開中に本番サーバーでこのスクリプトを実行できます。
私のテーブルは
これで、カテゴリとカテゴリタイプのExcelの行データがいくつかあります。データスクリプト(挿入ステートメントの束)を生成する必要があります。
私がしたこと
知りたいのですが、identity_insertのON/OFFを回避する方法はありますか。
sql - 実稼働SQLサーバーでIdentity_Insertをオンにすることに欠点はありますか
ID列である列名IDを持つテーブルにデータレコードを追加/挿入する単体テストを行います。
単体テストでは、ID を手動で挿入します。したがって、Insert ステートメントの前に Identiy_Insert を ON に設定できます。
本番サーバーでこの機能をオンにしておくことの欠点はありますか?
または、単体テストのアプローチを変更する必要がありますか? Name フィールドに値を挿入して取得する
そして ASSERT は、統合のためにデータレコードが挿入されたことを十分に証明する必要があります
日本酒。
sql - バッチで IDENTITY_INSERT を設定できません
場合
現在、私はデータベースシードスクリプトに取り組んでおり、sqlcmd
. たとえば、このスクリプト サンプル:
問題
ただし、sqlcmd
SQL Server Management Studio のモードで実行すると、次のエラーが発生します。
メッセージ 102、レベル 15、状態 1、行 5 'ON' 付近の構文が正しくありません。
メッセージ 102、レベル 15、状態 1、行 10 'END' 付近の構文が正しくありません。
いくつかグーグルで検索しましたが、何が間違っているのかわかりません。IF/BEGIN/END がなくても動作しますが、最初にチェックを実行するのが好きです。
質問:
- 私が間違っていることはありますか?
- 不可能な場合、回避策はありますか?
前もって感謝します!!
sql - SQL ServerでIDENTITY_INSERTがONまたはOFFに設定されているかどうかをどのように確認しますか?
これを検索しましたが、表示されたスレッドには、質問を理解していない人からの回答が多い傾向がありました。
次の構文を取ります。
このようなことをどのように行いますか:
ただし、データベース内のデータや、この情報を取得するための設定には何もしたくありません。ありがとう!
sql-server-2008 - SQLServerはID挿入を使用してスクリプトを生成します
データベーススクリプトを生成するとき、別の環境に移行するデータをスクリプト化しています。IDENTITY_INSERTのオン/オフを自動的に設定できるようにするスクリプト生成の設定はありますか?生成されたスクリプトで各テーブルを手動で調べて設定する必要はありませんか?SSMSを使用していますが、SSMSを介してこれを実行したいと思います。
これが私が得ているものです:
これが私が欲しいものです:
hibernate - Hibernate3.5と4のIDENTITY_INSERTの問題
Spring 3.1 / Hibernate 4 / Java 7 / Tomcat 7 / MSSQL 2008R2Webアプリケーションを実行します。レガシーデータとアーカイブデータを処理する必要があります。アーカイブからデータを抽出するときは、他の(アーカイブされていない)レコードが正しく再水和されるように、元の一意の識別子を使用する必要があります。これらの識別子は、主キー/自動増分フィールドに格納されます。
これまで、Spring 3.0 / Hibernate 3.5を使用していたとき、次のコードは、抽出されたレコードを適切なテーブルに挿入し直すために機能しました(すでに変数、、、session
およびentity
スコープfullTableName
があります)。
前述したように、これはすべてHibernate 3.5で正常に機能しましたが、Hibernate 4にアップグレードしたため、機能しなくなりました。WorkとIsolatedWorkの違いに何か問題はありますか?
問題を解決し、Workインターフェイスの問題を回避するために、次のことを試みました。
ただし、これも機能しませんでした。具体的には、スローされる例外はjava.sql.SQLException: Cannot insert explicit value for identity column in table 'Employee' when IDENTITY_INSERT is set to OFF.
まだですが、それをオンに設定するのに苦労していることは明らかです。
SQL Server Profilerで状況を追跡したところ、興味深いことがわかりました。各トランザクション本体でIMPLICIT_TRANSACTIONSをONに設定しています。プロファイラートレースからの出力例を次に示します(実際のスキーマをに置き換え、<schema>
大量のデータを短いラベルに置き換えました)。
現在、トランザクションのConnection.setAutoCommit(false)を介してIMPLICIT_TRANSACTIONSをOFFに設定しています(トランザクションはSpring@TransactionalおよびHibernateTransaction Managerを介して管理されています)。明らかに、それは機能していませんが、setAutoCommitを使用する以外の選択肢は何ですか?また、Spring3.0 /Hibernate3.5では機能するのにSpring3.1/ Hibernate4では機能しないのはなぜですか?
考えや提案をありがとう-私たちは困惑しています。
nhibernate - NHibernate-identity_insertをONにして挿入
データベースにエンティティを再挿入しようとしているという問題があります。これは、次の単体テストで示されています。
私のマッピングは非常に簡単です:
私が見る限りの問題は、NHibernateジェネレーターが、スイッチをオフにしても、SQLからID生成を呼び出しているということです。これを回避する方法はありますか?
編集:IDENTITY_INSERTを設定するときに「UniqueResult()」を実行するのを最初に忘れていましたが、これがエラーの原因ではないようです。それでも同じ結果が得られます
asp.net - EF: IDENTITY_INSERT が OFF に設定されている場合、テーブル 'Groups' の ID 列に明示的な値を挿入できません
ええ、これらの質問のもう 1 つです。私はここを見ましたが、役に立ちませんでした..
これが私の状況です。
私は ASP サイトを開始し、最初は SQLce を使用していました。ホスティング事業者がサポートしていなかったため、これは悪いことが判明しました。Web Matrix メソッドを使用して、sdf ファイルを SQL Server 2012 db に変換しました。データベースはすべて良好で、すべてがデータを読み取ることができます。テーブルに何かを書き込もうとすると問題が発生します。IDENTITY_INSERT
が OFF に設定されている場合、テーブル 'Groups' の ID 列に明示的な値を挿入できません。
今..以前はすべてうまく機能していました。ここに私が設定した物語の例があります:
それから。チョークするコードはどこにありますか:
savechanges() で終了します。
私の質問は、どうすればこれを修正できますか? (IDENTITY_INSERT ON を見ましたが、テーブルを作成するだけの場合はそうではありませんか?)..または、ID を使用して自動インクリメントする代わりに、別の方法は何ですか?
asp.net-mvc - ID 列を使用した EF Code First 親子挿入 (HELP)
私にはとても奇妙です。私は2つのエンティティを持っています。SalesStatus(親) と Sale(子)。
エラーが発生しました。Entity Framework は、PK 値を持つ新しいレコードを挿入しようとしました。「表の ID 列に明示的な値を挿入できません」
しかし、EntityState を EntityState.Detached または EntityState.Unchanged に変更したとき。子エンティティ (sale) は単独で正常に挿入されました (SalesStatus なし)。
私は非常に混乱してきました。
以下のケースを見つけました。しかし、私の場合はうまくいきません。 ID列を使用したEF Code Firstの親子挿入
ドットネット フレームワーク 4.0 / エンティティ フレームワーク 4.1 を使用しています
c# - EF Code First および ID 挿入 - 1 回のみ ID 挿入をオンにし、残りの時間はオフにします
ほとんどの場合、単純な Users テーブルを持つアプリケーションがあります。PK、UserID は Guid です。最初にEFコードを使用していますが、次のコードですべて問題ありません。
ただし、アプリケーションのある時点で、実際に Guid を強制したいと考えています。これは特殊なケースであり、この 1 つのコード ブロックの外側では、他のすべての場所で期待どおりにデータベースから Guid を生成する必要があります。
私が書いた Initializer の Seed 関数で、ID をうまく挿入できることを知っています。この極端なケースで ID 値を挿入できるように、これらの条件を再現するにはどうすればよいですか?