这是我的连接字符串
SqlConnection conn = new SqlConnection(@"Data Source=C:Usersadmindocumentsvisual studio 2010ProjectsWFA1WFA1database.sdf");
我从属性中复制了它,我在前面添加了@,但没有改变任何东西。在构建和运行期间没有错误。但是当我点击插入按钮时,出现了下面的错误:
"在建立到SQL Server的连接时发生与网络相关或实例特定的错误。未找到服务器或无法访问服务器。验证实例名是否正确,SQL Server是否配置为允许远程连接。"
我尝试编辑连接字符串并使用数据目录而不是整个路径,但同样的错误发生,我是新的。net所以我无法找出可能是什么原因。我试过谷歌,但我不知道那里的解决方案是否与我的问题有关。
提前感谢!
您正在使用错误类型的SQL连接。您应该使用SqlCeConnection
类:
SqlCeConnection conn = new SqlCeConnection(@"Data Source=C:Usersadmindocumentsvisual studio 2010ProjectsWFA1WFA1database.sdf");
这是一个非常好的SQL CE连接字符串参考。
SQL Server的数据源是机器名,而不是文件名。
您应该向SQL CE程序集添加引用,并执行以下操作:
SqlCeConnection conn = new SqlCeConnection(@"Data Source=C:Usersadmindocumentsvisual studio 2010ProjectsWFA1WFA1database.sdf");
对于MSSQL Server精简版,您应该使用SqlCeConnection
类。
所以这应该可以工作:
SqlCeConnection sqlConnection = new SqlCeConnection(@"Data Source=C:Usersadmindocumentsvisual studio 2010ProjectsWFA1WFA1database.sdf");
按如下方式创建连接字符串:
add in命名空间using System.Data.SqlServerCe;
SqlCeConnection conn = new SqlCeConnection(@"Data Source=C:Usersadmindocumentsvisual
studio 2010ProjectsWFA1WFA1database.sdf; Persist Security Info=False;");
如果.sdf
文件在你的项目,那么你可以使用:
string strConnectionString ="Data Source=" + (System.IO.Path.GetDirectoryName(System.Reflection.Assembly.
GetExecutingAssembly().GetName().CodeBase) + "\database.sdf;Persist Security Info=False;";
SqlCeConnectionconn = new SqlCeConnection(strConnectionString );