3

对 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;初始目录=等;”

然后错误给出了相同的消息,但为“初始目录”。

这是我的数据连接

在此处输入图像描述

4

5 回答 5

5

您使用SqlCeConnection的不是SqlConnection

这个类(SqlCeConnection)用于Sql Compact Edition连接字符串的语法规则不同的地方。例如:

Data Source=MyData.sdf;Persist Security Info=False;

相反,您的连接字符串用于 aSql ServerSql Server Express。因此,如果您的目标数据库是标签所指示的 SqlServer 数据库,那么您需要使用

using (var cn = new SqlConnection(connectionString))
using (var cmd = new SqlCommand(selectSql, cn))
{
   ....
}
于 2013-05-15T21:43:39.910 回答
0

提醒一下:使用 MS Access 数据库时,需要使用 OleDbConnection 和 OleDbCommand,而不是 SqlConnection 和 SqlCommand。SqlConnection 的连接字符串中的“提供者”是无效的 AFAIK。

于 2013-12-07T13:25:50.547 回答
0

代替数据源,尝试服务器,例如:

string connectionString = "Server=adamssqlserver;Database=master";
于 2013-05-15T21:41:06.683 回答
0

网站包含有关设置连接字符串的良好信息。有很多选项我通常必须求助于参考才能正确设置它。

于 2013-05-15T21:45:51.783 回答
0

您是否缺少连接字符串部分中的 "。

应该

<add name="StevenTestEntities" 
connectionString="metadata=res://*/Model.TestModel.csdl|res://*/Model.TestModel.ssdl|res://*/Model.TestModel.msl;
provider=System.Data.SqlClient;
provider connection string=&quot;Data Source=Data Source=D000097;
Initial Catalog=StevenTest;
Integrated Security=True;MultipleActiveResultSets=True&qout;"
providerName="System.Data.EntityClient" />

试试看。

于 2016-03-22T07:00:42.680 回答