Method/Property 新 SQL 服务器连接出错
Method/Property Error on New SQL Server Connection
我在 VS2013 中 运行ning VB .Net,在 Windows 8 over SQL Server 2008 R2 上,我创建了一个 SQL 连接失败并出现错误:
Property access must assign to the property or use its value.
这是我的代码:
将 oCnn 变暗为 SqlConnection
将 sCnn 调暗为字符串
将 bSunCnnOK 调暗为布尔值
Try
If vsSunServer <> "" Then
sCnn = "Provider=SQLOLEDB.1;" & _
"Integrated Security=SSPI;" & _
"Persist Security Info=False;" & _
"Initial Catalog=SunSystemsData;" & _
"Data Source=" & vsSunServer
oCnn = New SqlConnection(sCnn)
oCnn.Open()
bSunCnnOK = True
End If
Catch ex As Exception
bSunCnnOK = False
End Try
_vsSunserver_
是传递给 sub 的字符串,运行 时间值为 "SVRSUN07"
。
在线上出现错误:
oCnn = New SqlConnection(sCnn)
所以在运行时,sCnn 成立:
"Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=SunSystemsData;Data Source=SVRSUN07"
我已经从 .udl 文件中提取了这个连接字符串,在我测试连接时 returns 成功了。
我可以运行SQL通过这个数据库发送短信可以。
下面是一个 ASCII 艺术图,显示了组件之间的关系。您正在尝试将 SQL OLEDB 连接字符串与 SqlConnection 一起使用。这些东西不在一起。
C#/VB.NET code -┬------------> SqlConnection -----------------┬-> SQL Server
| |
├--> OleDbConnection -┬-> SQL OLEDB provider -┤
| | |
| Native code --┤ |
| | |
└-> OdbcConnection ---┴-> SQL ODBC driver ----┘
如果您真的想使用 SQL OLEDB 本机提供程序,那么您可以使用 OleDbConnection
。如果您希望 VB.NET 代码灵活并可能连接到其他 OLEDB 提供程序(例如 Access、Postgres、Mysql 等),这可能很有用。
但是,如果您确定您只会连接到 SQL 服务器,那么使用 SqlConnection
和 "Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=SunSystemsData;Data Source=SVRSUN07"
等连接字符串会更容易。
我在 VS2013 中 运行ning VB .Net,在 Windows 8 over SQL Server 2008 R2 上,我创建了一个 SQL 连接失败并出现错误:
Property access must assign to the property or use its value.
这是我的代码:
将 oCnn 变暗为 SqlConnection 将 sCnn 调暗为字符串 将 bSunCnnOK 调暗为布尔值
Try
If vsSunServer <> "" Then
sCnn = "Provider=SQLOLEDB.1;" & _
"Integrated Security=SSPI;" & _
"Persist Security Info=False;" & _
"Initial Catalog=SunSystemsData;" & _
"Data Source=" & vsSunServer
oCnn = New SqlConnection(sCnn)
oCnn.Open()
bSunCnnOK = True
End If
Catch ex As Exception
bSunCnnOK = False
End Try
_vsSunserver_
是传递给 sub 的字符串,运行 时间值为 "SVRSUN07"
。
在线上出现错误:
oCnn = New SqlConnection(sCnn)
所以在运行时,sCnn 成立:
"Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=SunSystemsData;Data Source=SVRSUN07"
我已经从 .udl 文件中提取了这个连接字符串,在我测试连接时 returns 成功了。
我可以运行SQL通过这个数据库发送短信可以。
下面是一个 ASCII 艺术图,显示了组件之间的关系。您正在尝试将 SQL OLEDB 连接字符串与 SqlConnection 一起使用。这些东西不在一起。
C#/VB.NET code -┬------------> SqlConnection -----------------┬-> SQL Server
| |
├--> OleDbConnection -┬-> SQL OLEDB provider -┤
| | |
| Native code --┤ |
| | |
└-> OdbcConnection ---┴-> SQL ODBC driver ----┘
如果您真的想使用 SQL OLEDB 本机提供程序,那么您可以使用 OleDbConnection
。如果您希望 VB.NET 代码灵活并可能连接到其他 OLEDB 提供程序(例如 Access、Postgres、Mysql 等),这可能很有用。
但是,如果您确定您只会连接到 SQL 服务器,那么使用 SqlConnection
和 "Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=SunSystemsData;Data Source=SVRSUN07"
等连接字符串会更容易。