ユーザーがシステムメッセージ2627の代わりに重複したキーを入力したときに、SQL ServerからMS Accessに渡すカスタムエラーメッセージを設定しようとしています。私はsp_addmessageとRAISERRORとTRY/CATCHブロックを読んだことがあります。これらはすべて理にかなっています。しかし、私が見たところでは、RAISERRORコード(とTRY/CATCHブロック)をどこに置いて実際にアプリケーションに戻すのかは分かりません。では、コードはどこに行きますか?SQL RAISERRORコードはどこに配置しますか?
1
A
答えて
4
重複したキーを入力するユーザーの観点から考えてはいけません。代わりに、ユーザーがキーを入力するだけで、その中のいくつかはキーを挿入しようとすると重複していると考えられます。これは微妙な違いですが、ここでは役立ちます。特定のタイプの挿入ではなく、すべての新しいテーブルの挿入に対してコードを使用できると考えるからです。
ユーザーがキーを入力すると、INSERT SQL文が実行されます。キーが重複していて、それを防ぐためにテーブルに定義された制約がある場合、INSERTステートメントは失敗します。 AccessアプリケーションでカスタムSQLを作成している場合は、これをTRY/CATCHで囲み、RAISERRORをCATCHブロックに入れます。あなたのAccessアプリケーションがSQLを全く見ないようなものであれば、あなたは立ち往生していて、組み込みの振る舞いをしなければならないかもしれません。
関連する問題
- 1. ページ固有のJavaScriptコードはどこに配置しますか?
- 2. Alarmanager - どこに配置しますか?
- 3. WHEREキーワードはどこに配置しますか?
- 4. データ注釈タグはどこに配置しますか?
- 5. オープンFILEインジケータはどこにプログラムに配置しますか?
- 6. どこでモバイル化Navbarのコードをmaterialize cssに配置しますか?
- 7. Magentoモジュール - どこにコードを配置するか
- 8. setIntervalを使用してイメージを表示/非表示にします(コードはどこに配置しますか)。
- 9. onWindowBeforeUnloadはどこに配置しますか?
- 10. presave関数はどこに配置しますか?
- 11. 検証ロジックはどこに配置しますか?
- 12. カスタムエントリポイントの定義はどこに配置しますか?
- 13. XlsxWriterファイルはどこにPythonで配置しますか?
- 14. Googleアナリティクスコードは.ASPXページのどこに配置しますか?
- 15. Buildr Integrationテストはどこに配置しますか?
- 16. 私はどこでストーリーボードにloginViewを配置しますか?
- 17. 「WSGIPassAuthorization On」はどこに配置しますか?
- 18. ビューロジックはどこに配置しますか?
- 19. CodeIgniterにはどこでエラーオブジェクトを配置しますか?
- 20. このコードはMeteorの新しいファイル構造のどこに配置しますか?
- 21. ReactDOM.renderのHTMLのコード行はどこに置かれますか?
- 22. 一般に、アプリケーションにSQLクエリを配置する場所はどこですか?
- 23. コードが.HTACCESSのどこに配置されるかは重要ですか?
- 24. サービスレイヤプロジェクトにIOC(ninject)コードを配置する場所はどこですか?
- 25. MVCビューにC#ベースのコードを配置する場所はどこですか?
- 26. どこに.erl&.hrlファイルをphoenixプロジェクトに配置しますか?
- 27. どこにビルドストラップファイルをmavenプロジェクトに配置しますか?
- 28. JavaScriptコードはどこに置く必要がありますか?
- 29. コードはどこに置く必要がありますか?
- 30. NPMの要求コードはどこに置いていますか?
RAISEERROR()はSQL関数です。返されるエラーがあるときに呼び出します。ストアドプロシージャでカプセル化する必要はありません。これは、いつでもあなたが使いたい場所で使用できるようになっています。 –
@スティーブンメイズ大丈夫、そうです。私はまだRAISERRORを使用するコードをどこに置くべきかわかりません。 – Rominus
RAISERRORは本当に必要ありません。意味のあるメッセージを表示するには、VBAでエラーハンドラを使用します。次に例を示します。https://social.msdn.microsoft.com/Forums/office/en-US/77c6075b-e18c-4598-a9d4-db2a91e8270c/trap-error-in-access-form-linked-to-sql -server-table?forum = accessdev – Andre