空のOn SQL Authenticationデータベースメソッドを避けるべき理由
日付 | 2009/06/05 |
---|---|
ID | 75755 (英語原文参照) |
バージョン | 11 |
プラットフォーム | Mac & Win |
外部アプリケーションからデータベースのSQLサーバに接続した場合、On SQL Authenticationデータベースメソッドもし存在すれば実行され、$0にTrueが代入されない限り、エラーが返されることになっています。
通常はこの方式でSQLの認証が行なわれますが、例外的に、4DのユーザパスワードシステムをそのままSQLで使用する場合、On SQL Authenticationは不必要(も正確には存在してはいけない)なので気をつけなければいけません。たとえば、偶然の仕業で空のOn SQL Authenticationが作成されてしまい、そのことに気づかないことがあるかもしれません。
On SQL Authenticationが存在しない状態と、空のOn SQL Authenticationの違いは、次のスクリーンショットに例証されています。
空のOn SQL Authenticationが存在すると、#9917(一般的なSQLエラー)や#9900(サーバが接続を拒否エラー)など、予期しないことが起こるかもしれません。