【问题标题】:Connect SQL Express 2012 vb.net连接 SQL Express 2012 vb.net
【发布时间】:2014-02-15 19:56:15
【问题描述】:

我已经为此工作了几天。我正在尝试为我的数据库制作 vb.net 表单应用程序。现在我正在处理一个登录表单和一个主表单。我研究了许多不同的网站并永远使用这个字符串,但我无法连接到我的数据库。我得到不同的错误说机器拒绝它,然后我得到一个超时错误,然后它会回到拒绝。

Dim conn As New MySqlConnection
    If conn.State = ConnectionState.Closed Then
        conn.ConnectionString = ("Server=192.168.0.2;Database=Sunshinetix;User=sa;Password=sunshine;")
    End If

谁能告诉我我做错了什么?我是 vb.net 的初学者。这是一个远程服务器,但是局域网。

谢谢!

PS:是不是因为我用的是SQL Express?

Enable remote connections for SQL Server Express 2012

我已经打开那篇文章几天了,到目前为止它对我有很大帮助。

【问题讨论】:

  • 在你的桌面上创建一个名为 test.udl 的文件 双击它,你应该得到一个数据链接属性窗口。逐步完成该过程并确保测试正常。如果是,请关闭数据链接窗口并右键单击 -> 在记事本中打开。您的连接字符串将为您显示。
  • 那么是 SQL Server Express 还是 MySQL?你为什么使用 MySqlConnection?
  • 我不知道 Yuriy Galanter 有什么不同。我正在使用 SQL Express
  • G Mastors,这是它​​成功返回的内容,Provider=SQLOLEDB.1;Persist Security Info=False;User ID=Sunshinetix;Initial Catalog=Sunshinetix;Data Source=SUNSHINETIX

标签: sql vb.net connection-string


【解决方案1】:

如果您使用的是 Sql Server express,则需要使用SqlConnection,而不是MySqlConnection。那个用于MySQL,这是一种不同于Microsoft SQL Server的SQL实现

当然,Microsoft 还提供 OleDbConnection 作为“包罗万象”的一种(在此处查看更多信息:Difference between Sql Connection and OLEDB Connection)。不过,如果我知道我会坚持使用特定的 SQL 提供程序,那么我通常会使用专门的版本。

此外,如果您有兴趣,这里是常见 SQL 提供程序的小列表:

  • Microsoft SQL Server - 由 Microsoft 开发和支持的专有 SQL 提供程序
  • MySQL - 由 Oracle 开发的免费、开源的关系数据库系统。非常受网络开发者欢迎。
  • PostgreSQL - 另一个开源 RDBMS。由于其灵活性和对标准的遵守而广受欢迎。
  • SQLite - 一个强调可移植性的小型 SQL 提供程序。与其他人不同,它使用本地数据库文件而不是远程服务器。这使其成为开发需要本地存储的移动应用程序时的默认选择。

【讨论】:

  • 这确实创建了我的连接。谢谢。还在学习。现在必须找出为什么其余的都不起作用大声笑
  • 您会使用哪个提供商?我只想要一个我知道我不会因为连接错误而让我的数据库工作的地方
  • 我通常使用带有SqlConnection 的MS SqlServer。学习起来肯定没问题。我主要想包括一个列表,以便您了解所有内容(以及为什么存在不同的 sql 连接类)
【解决方案2】:

试试这个:

Dim SQLConn As SqlConnection = New SqlConnection
SQLConn.ConnectionString = "Data Source=servername;" & _
"Initial Catalog=databasename;" & _
"User ID=username;" & _
"Password=userpassword;"

无法连接的原因是你使用的是MySQLConnection,即连接到MySQL DB,这与MS SQL不同,所以你需要使用SqlConnection

你也可以检查一下:

http://support.microsoft.com/kb/308656

同时查看这个网站:

http://www.connectionstrings.com/sql-server/

根据 SQL 版本了解SqlConnection 字符串的偏好。

试试这个来测试你的连接字符串:

    Dim connectString as String = ""
Try
     Dim objConn As SqlConnection = New SqlConnection(Server=192.168.0.2;Database=Sunshinetix;User=sa;Password=sunshine;)
     objConn.Open()
     objConn.Close()
     Msgbox("Successfully connected to database!")
Catch ex As Exception
     Msgbox("Cannot connect, Error:" & ex.Message)
End Try

【讨论】:

  • 感谢您的这篇文章。它帮助我建立了联系。非常感谢所有帮助!!!
  • 我让我的数据库连接,但他们是在这一行抛出的异常。我不确定我是否写错了,因为我从 MYsql 转换为 SQL Express。我有 - Dim data As SqlDataReader 例外是 - data = command.ExecuteReader
  • @user3232927 最好是创建新问题,因为这与主题无关,然后在此处添加带有新问题网址的评论。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-17
  • 2012-07-01
相关资源
最近更新 更多