
・環境
WindowsXP Pro
SQL Server2005
はじめまして。
Transact-SQLのBULK INSERTで、エラー(ファイルが存在しない等)が発生した場合に、専用の処理を行いたいと思っています。
※BULK INSERTでエラーが発生したら、リターンコード100を返す等の処理を行いたいと思ってます
私の方で試したのは、BULK INSERTをBEGIN TRYでネストしエラーキャッチを行おうと思いましたがキャッチできず困っております。
以下、質問させてください。
・BULK INSERTのエラーはエラーキャッチできないのか?できる場合その方法は?
・エラーキャッチできない場合、他の方法でBULK INSERTエラー時の処理を行う方法はあるのか?
お手数ですが、よろしくお願いします。
No.1ベストアンサー
- 回答日時:
ファイルの読み込み時エラーであれば捕捉できるはずですが、ファイル不存在などの場合は、リンクページの「ステートメントレベルの再コンパイルで発生するエラー (コンパイル後の名前の遅延解決により発生するオブジェクト名の解決エラーなど)」に相当するため、捕捉できないのだと思います。
したがって、以下のように動的クエリにすればよいです。
なぜこれだとOKなのかも、リンクページに書いてあります。
DECLARE @sql varchar(max)
BEGIN TRY
SET @sql='BULK INSERT TABLE1 FROM ''C:\AAAAA.txt'' WITH (ROWTERMINATOR=''\n'')'
EXEC (@sql)
END TRY
BEGIN CATCH
SELECT ERROR_NUMBER(),ERROR_MESSAGE()
END CATCH
参考URL:http://technet.microsoft.com/ja-jp/library/ms175 …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP プログラムコードを入力する場合改行してもいいですか? 2 2022/10/02 16:05
- MySQL #1062 - '0' は索引 'PRIMARY' で重複しています。とでています。 1 2023/01/01 06:13
- MySQL 動画をsqlで上手くinsertできません。 Typeはlongblob型にしています。 構文エラー 1 2022/04/07 10:10
- FX・外国為替取引 MQL5にて謎のエラーが発生!だれか対処を教えてください! 1 2023/03/25 15:59
- PostgreSQL DBFluteについて質問です。 環境:PostgreSQL java8 前提:webアプリケーショ 1 2022/07/07 00:49
- MySQL 下の画像はSQLの4大命令の性質をまとめたものであるらしいです UPDATE INSERT DELE 1 2023/06/07 15:36
- Visual Basic(VBA) Excelマクロ Application.Run 5 2023/06/17 15:16
- PostgreSQL SQLでUPSERTを一度に複数行やる方法 3 2022/03/25 15:17
- Access(アクセス) access,vbaでフォルダ内のファイルをテーブルにインポート、ファイル名もフィールドに追加したい 1 2022/08/31 11:11
- UNIX・Linux bash環境でのエラー対応をお願い致します。 1 2022/11/26 17:41
このQ&Aを見た人はこんなQ&Aも見ています
-
BULK INSERTのエラー取得は可能なのでしょうか?
SQL Server
-
ファイルの存在チェック
SQL Server
-
BULK INSERT時のNull許容について
SQL Server
-
-
4
CSVファイルをBULK INSERTでSQLserverに読み込むことは可能?
その他(データベース)
-
5
BULKINSERTのWITHオプションについて
SQL Server
-
6
バッチファイルからのBCP起動について
SQL Server
-
7
テーブル列数とデータファイル列数の違うbcpインサートをしたい
SQL Server
-
8
TRY CATCHでシステムエラーを検知できない
SQL Server
-
9
SQLのエラー(~付近に不適切な構文があります)
SQL Server
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
#1062 - '0' は索引 'PRIMARY' ...
-
オラクル(PL/SQL)のエラー
-
実行時エラー459 withステート...
-
Access2010実行時エラー-21473525
-
アクセスでエラー このフィー...
-
asp sqlのselect文について
-
ACCESSでのINSERTについて
-
SQL*Loaderで「オブジェクトが...
-
PL/SQL ORA-06502エラーに関し...
-
UPDATEを使ったSQL文にて
-
ACCESSでエラー時に再起動する方法
-
一般的なネットワークエラーに...
-
DocuWorksでの印刷
-
AccessVBA 実行時エラー'2766'...
-
エラーについて
-
AccessのMDBのオープンエラーに...
-
SQLserver2005 nvarchar を flo...
-
CREATE PROCEDUREで
-
SQLPLUSで結果を画面に表示しない
-
秘書君2
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
アクセスでエラー このフィー...
-
#1062 - '0' は索引 'PRIMARY' ...
-
オラクル(PL/SQL)のエラー
-
列名に変数を使うことはできな...
-
SQLserver2005 nvarchar を flo...
-
BULK INSERTのエラー取得は可能...
-
AccessVBA 実行時エラー'2766'...
-
UPDATEを使ったSQL文にて
-
空白はダメというエラーの表示...
-
SQL文長の制限
-
PL/SQL ORA-06502エラーに関し...
-
Access2010実行時エラー-21473525
-
エラーについて
-
DocuWorksでの印刷
-
Access 実行時エラー'3075' 対...
-
アクセスでのエラーについて
-
『ORA-00936: 式がありません。...
-
オラクルでisnumeric?
-
実行時エラー459 withステート...
-
SQL*Loaderで「オブジェクトが...
おすすめ情報