1

私はasp.netのメンバーシップウェブサイトで作業しています。私はメンバーシッププロバイダを自動的に作成し、現在はソリューション内のSQL Expressデータベースに格納しています。私はすべてのテーブルをSQL Expressの代わりにSQLデータベースに移動したい。昨夜、私はSQL ExpressデータベースをSQL Server管理スタジオに添付して、すべてのオブジェクトを見ることができました。次に、Visual Studioでソリューションを実行すると、SQL ExpressデータベースでLOGIN FAILEDというエラーが発生し、ソリューションが実行されていませんでした。 私には2つの質問があります。 1.なぜそれが起こっていますか? 2.同じオブジェクトを持つSQL Serverに同じデータベースを作成し、SQL Expressデータベースの代わりにSQL Serverデータベースをポイントすると、メンバショッププロバイダに問題がありますか? ありがとうございます。SQLエクスプレスデータベースからSQLデータベースを作成する

+0

新しいデータベースに接続するとき、またはユーザーが自分のサイトにログインしているときにLOGIN FAILEDになっていますか? – JeffO

+0

asp.netアプリケーションを実行しているときにログインに失敗し、データベースへの接続を開こうとしています。 – Laziale

答えて

1

あるホスト(SQL Server Expressを実行する)から別のホスト(非エクスプレスSKUを実行している)にデータベースを移動したようです。これは正しいです?

メンバーシップの接続文字列が、新しい場所(Express以外のSQL Server)のを指していることを確認してください。期待どおり、新しいSQL Serverインスタンスでログインとユーザーが正しく設定されていることを確認します。

+0

SQL Server管理スタジオに付いているのは動くという意味ですか?私はちょうどいくつかのテーブルとSPを作成するために添付したので。 – Laziale

+0

あなたは "アタッチ"するためにどのようなステップを正確に明確にできますか? – Greg

+0

SSMSを右クリックしてデータベースフォルダー - >アタッチデータベースを開き、asp.netアプリケーションのapp_dataフォルダーからデータベースを選択した後、いくつかのテーブルといくつかのストアードプロシージャーを作成し、asp.netアプリケーションを再度実行します。私は、エラーメッセージ:私のWindowsユーザーのログインに失敗しました。私はWindows認証を使用しています。すべてはローカルで行われ、リモートでは何も行われません。あなたの助けをありがとう – Laziale

1

データベースを新しいサーバーに接続しても、必要なログインが自動的に作成されるわけではありません。

run exec sp_change_users_login 'Report'データベースのSSMS内から。

それが結果セットには何もして戻ってきた場合は最初の結果セットからユーザ名がある場合、あなたはexec sp_change_users_login 'Auto_Fix', '<username>'

を実行する必要があります。