2012-05-10 20 views
0

、それはこのようなデータソースを生成します。のVisual Studio、Visual StudioでAsp.netの接続文字列

<asp:SqlDataSource ID="SqlDataSource2" runat="server" 
     ConnectionString="<%$ ConnectionStrings:AdventureWorksConnectionString1 %>" 
     SelectCommand="SELECT top 10 * FROM [Address]"> 
    </asp:SqlDataSource> 

それを実行すると、それは無効なオブジェクト」を言うだろう。その後、私はそれは、接続文字列は、次に、どのようにこの形式を使用するためにVSに設定へ

<connectionStrings> 
     <add name="AdventureWorksConnectionString1" connectionString="Data Source=localhost\SQLEXPRESS;Initial Catalog=AdventureWorks;Integrated Security=True" 
      providerName="System.Data.SqlClient" /> 
    </connectionStrings> 

ある

[AdventureWorks].[Person].[Address] 

する必要があり、それを見つけましたか?

+0

接続文字列はどのようなものが見えますか? Odedが既に指摘している点を除いて、「Initial Catalog = AdventureWorks」が見つからず、あなたのクエリは* master *データベースに向けられています。 – Filburt

答えて

2

ログインしたデータベースユーザーのデフォルトのスキーマは、おそらく[dbo]で、[Person]ではありません。このような場合は、スキーマ名を修飾する必要があります。

あなたの選択コマンドは次のようになります。

SELECT top 10 * FROM [Person].[Address] 
+0

が正しくありません。アドレスはテーブル – user595234

+0

@ user595234 - 謝罪、あなたは正しいです。ユーザーがデフォルトでそのスキーマを使用するようにセットアップされていない場合は、スキーマを修飾する必要があります。 – Oded

関連する問題