0

web.config:

<add name="conn" providerName="System.Data.SqlClient" connectionString="Server=SERVERNAME; Initial Catalog=INITIALDB; UID=username; PWD=+abc-def(;" />

データベースユーザーを削除して再作成することにより、INITIALDBでユーザー名にdb_ownerロールがあることを確認しました。SSMS (上記の UID と PWD を使用) 経由でサーバーに接続し、データベースを拡張することで、ユーザー名パスワードが機能することを確認しました。

何か案は?私は途方に暮れており、割り当てられたパスワードを簡単に変更することはできません...これらの文字をエスケープする必要はないと思いますが、明らかに問題があります。

アップデート:

エラーはパスワード文字とは関係ありませんでした。「データベースを開けません...ログインによって要求されました。ログインに失敗しました...」しかし、接続文字列から「初期カタログ」または「データベース」セクションを削除すると、接続は完全に機能しました。データベースには、データベースの名前とは異なる .MDF ファイル名が含まれていることが判明しました (例: my_db_name および db_name.mdf)。データベースまたは初期カタログ プロパティを指定した接続文字列は、このため接続できませんでした。デタッチし、MDF ファイル名を一貫性のあるものに変更し、データベースを再アタッチすると、実際に問題が解決されました。奇妙ですよね?

4

1 に答える 1

1

パスワードは次のように使用します。&quot;+abc-def(;&quot;

お気に入り:

<add name="conn" providerName="System.Data.SqlClient" connectionString="Server=SERVERNAME; Initial Catalog=INITIALDB; UID=username; PWD=&quot;+abc-def(;&quot;" />
于 2011-12-19T23:19:57.593 に答える