- - PR -
Set Identity Insertのエラー
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2005-06-15 14:22
数日前にSQLサーバーを使い始めました。
今までAccess&Mysqlでデータベースを管理していたのですが 予てからレスポンスが悪い事が気になっており、SQLServerの WorkgroupEditionを導入いたしました。 私は前任者が作成したデータベースを引き継いで管理している のですが、データベースの中身は全てAccessのクエリ、マクロで 作成されています。 VBAは一切使っていません。 これをMysqlのテーブルとリンクさせ、2台のPCから共有で使って いました。 そのテーブルを一度Access側に戻して、アップサイジングウィザードを 利用して、SQLServerへテーブルを移し、テーブルリンクのみを利用して います。 業務中の空いた時間にデータベースを改良しないといけないので これが現在出来る最良の方法でした。 さて、通常は調子良く働いてくれるようになりましたが、一日に何度か Set Identity Insert テーブル名 on に設定されているため テーブル名のID列に明示的な値を挿入する様にとのエラーを 吐きます。 問題のID列はオートナンバーでinsertする値は明示的に指定せずに データベースに自動で値を割り当ててもらっています。 どこかで、勝手にSet Identity Insertがonになっているようです。 一旦、Accessを終了させるとまた機嫌を直してくれますが気になります。 色々、調べてみて苦し紛れに、insertするクエリの直前に Set identity insert テーブル名 off を追加する方法を思いつき、何度か挑戦してみましたが クエリのSQLに書き加えても、SQLの実行で行ってもAccessに怒られます。 仕事で使うデータベースの管理を最低限出来る為だけに知識を付けた為 抜本的な解決方法も分かりませんし、苦し紛れにSet identity insertを offで挿入する事も出来ません。 どなたか、解決方法をご教授頂けませんでしょうか? ちなみにSQLServerのエラー一覧で類似したエラーをSP4で回避できると 書いてあったのでデータベース コンポーネントのSP4を当てましたが これも効果はありませんでした。 類似したエラーはこちらです。 http://support.microsoft.com/kb/878501 私の場合とは少し違うようですが・・・・・ |
1