[英]DataSource parameter in connection string yields “Keyword not supported”
[英]Keyword not supported in Connection String: 'database'
C#和VS2012的新手。
我正在嘗試連接到本地數據庫連接。
這是代碼
string selectSql = "select * from Tasks";
string connectionString = "Data Source=adamssqlserver;database=master;Integrated Security=true;";
using (var cn = new SqlCeConnection(connectionString))
using (var cmd = new SqlCeCommand(selectSql, cn))
{
cn.Open();
using (var reader = cmd.ExecuteReader())
{
//do something
}
}
這是錯誤
不支持的關鍵字:“數據庫”。
如果我先輸入初始目錄
“數據源= adamssqlserver;初始目錄= etc;”
然后,該錯誤給出了相同的消息,只是“初始目錄”。
這是我的數據連接
您正在使用SqlCeConnection
而不是SqlConnection
此類(SqlCeConnection)用於Sql Compact Edition
,其中連接字符串的語法規則不同。 例如:
Data Source=MyData.sdf;Persist Security Info=False;
相反,您的連接字符串用於Sql Server
或Sql Server Express
。 因此,如果您的目標數據庫是SqlServer數據庫(如標簽所示),則您需要使用
using (var cn = new SqlConnection(connectionString))
using (var cmd = new SqlCommand(selectSql, cn))
{
....
}
嘗試使用Server代替Data Source,例如:
string connectionString = "Server=adamssqlserver;Database=master";
該網站包含有關設置連接字符串的良好信息。 我通常必須參考很多選項才能正確設置它。
提醒一下:使用MS Access數據庫時,需要使用OleDbConnection和OleDbCommand,而不是SqlConnection和SqlCommand。 SqlConnection的連接字符串中的“提供程序”無效的AFAIK。
您是否在連接字符串部分中缺少“”。
應該
<add name="StevenTestEntities"
connectionString="metadata=res://*/Model.TestModel.csdl|res://*/Model.TestModel.ssdl|res://*/Model.TestModel.msl;
provider=System.Data.SqlClient;
provider connection string="Data Source=Data Source=D000097;
Initial Catalog=StevenTest;
Integrated Security=True;MultipleActiveResultSets=True&qout;"
providerName="System.Data.EntityClient" />
試試看。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.