为什么OleDbConnection访问被拒绝(SQL Server 2014)?
string connectionString =
"Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=UserInfo;Data Source=C:\\...\\SqlServerDbExample.mdf.;Trusted_Connection=False";
OleDbConnection oleConnection = new OleDbConnection(connectionString);
结果:SQL Server不存在或访问被拒绝。
有意拼写错误的提供者名称会导致不同的消息:
'xxxSQLOLEDB.1'提供程序未在本地计算机上注册。
答案 0 :(得分:0)
Data Source=C:\\...\\SqlServerDbExample.mdf
SQL Server是服务器应用程序,如果没有连接到文件名*,则通过网络地址或名称连接到服务器。
示例:http://www.connectionstrings.com/sql-server-native-client-11-0-oledb-provider/
*除非您附加,在这种情况下,您不要使用data source
来指定文件名。
答案 1 :(得分:0)
这有效:
string connectionString =
"Provider=SQLOLEDB.1" + ";" +
"Integrated Security=SSPI" + ";" + //Windows authentication
"Persist Security Info=False" + ";" +
"User Instance=True" + ";" +
"Data Source=CTE-LAPTOP\\SQLEXPRESS" + ";" +
"Initial Catalog=SqlServerDbExample" + ";" + //Database name
"AttachDBFilename=C:\\..\\SqlServerDbExample.mdf" + ""; //Filename
OleDbConnection oleConnection = new OleDbConnection(connectionString);