

SQLServer2005 を使用し、ストアドプロシージャを作成しています。
select ~ into ~ で一時テーブルを作成、データ挿入するのですが、
この命令で作成された一時テーブルにプライマリキーを作成したいと
考えております。
目的は、挿入される件数が多くなりそうなので、
検索を速くする為です。
プライマリキーを作成するのは、
ALTER TABLE ~ CONSTRAINT PK_xxx PRIMARY KEY CLUSTERED ( ~ )
で作成できる事は、理解しております。
これらの処理をストアドプロシージャで行いたいのですが、
注意点としては、当ストアドプロシージャが
並行して実行される事を考慮しておかなくてはなりません。
以下のようなサンプルを作成し、テストしてみたのですが、
セション1でストアドプロシージャ実行後、
セション2でストアドプロシージャを実行してみたのですが、
以下のエラーメッセージが表示されてしまいます。
ここで質問ですが、
制約名をどのようにすれば実現できるのでしょうか。
たとえば、制約名を省略すれば、システム内で一意な名称を
命名してくれるような書き方はないのでしょうか。
ご存じの方、ご回答宜しくお願いします。
-- サンプルストアドプロシージャ
create procedure proc_test as
select getdate() AS sysdate into #worktable
alter table #worktable with nocheck add
constraint pk_xxx primary key clustered ([sysdate])
waitfor time '23:59' -- テストの為待機
-- セション1ストアドプロシージャ実行
exec proc_test
-- セション2ストアドプロシージャ実行
exec proc_test
-- セション2の実行結果
(1 行処理されました)
メッセージ 2714、レベル 16、状態 4、プロシージャ proc_test、行 6
データベースに 'pk_xxx' という名前のオブジェクトが既に存在します。
メッセージ 1750、レベル 16、状態 0、プロシージャ proc_test、行 6
制約を作成できませんでした。以前のエラーを調べてください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Access VBA [リモートサーバー...
-
ACCESS2007 フォーム 「バリア...
-
Accessでクエリを完了できませ...
-
SSIS 変数の値をSQL実行タスク...
-
重複するキーから一番古い年月...
-
SI Object Browserのテーブルス...
-
SQLServerで同一条件レコードの...
-
アクセスのテーブルからエクス...
-
時系列データの抜けの調べ方
-
既に使用されているので、使用...
-
SQLスクリプトを自動生成する方法
-
bcpインサートでのフォーマ...
-
DBMAGICのプログラム解析
-
ACCESS-リンクテーブルの設定で...
-
sqlplusでバックスペースが効か...
-
あるテーブルのデータを追加、...
-
ユニオンクエリの結果をテーブ...
-
Access カレントレコードがあり...
-
ボタンをクリックした回数をカ...
-
ExcelからAccess2013DBを更新す...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ACCESS2007 フォーム 「バリア...
-
Access VBA [リモートサーバー...
-
Accessでクエリを完了できませ...
-
ACCESSのODBCリンクテーブルに...
-
大きなテーブルに対する問い合...
-
VBAの実行時エラー'2522'について
-
テーブル作成後なんですが、Pri...
-
accessでSQL実行時のテーブル名...
-
実行時エラー3086 削除クエリ...
-
Select ~ into ~ で作成した...
-
アクセスのワークシート変換に...
-
ユニオンクエリで繋げられるテ...
-
インデックスを調べる方法は?
-
AccessのテーブルをSQL Server...
-
PhpMyAdminで作成して実行せよ...
-
Access Update文の副問い合わせ
-
TRY CATCHでシステムエラーを検...
-
Access VBA 読み取り専用かチェ...
-
SQL Serverのテーブルってどう...
-
SSIS 変数の値をSQL実行タスク...
おすすめ情報