Mysql Visual Basic 2008-NullReferenceException错误?
我在这里使用的是VisualBasic2008,我正在调试连接到SQL数据库并在其中写入内容的代码。在我遇到这样的错误之前,一切都很顺利。未处理NullReferenceException。发生什么事?以下是我正在使用的代码:Mysql Visual Basic 2008-NullReferenceException错误?,mysql,vb.net,visual-studio-2008,macos,Mysql,Vb.net,Visual Studio 2008,Macos,我在这里使用的是VisualBasic2008,我正在调试连接到SQL数据库并在其中写入内容的代码。在我遇到这样的错误之前,一切都很顺利。未处理NullReferenceException。发生什么事?以下是我正在使用的代码: Dim conn As MySqlConnection conn = New MySqlConnection conn.ConnectionString = "server=...; user
Dim conn As MySqlConnection
conn = New MySqlConnection
conn.ConnectionString = "server=...; user id=...; password=...; database=..."
Try
conn.Open()
Catch myerror As MySqlException
MsgBox("Error connecting to database")
End Try
Dim myAdapter As New MySqlDataAdapter
Dim sqlquery = "SELECT * FROM user WHERE username = '" + TextBox2.Text + "'"
Dim myCommand As New MySqlCommand()
myCommand.Connection = conn
myCommand.CommandText = sqlquery
myAdapter.SelectCommand = myCommand
Dim myData As MySqlDataReader
myData = myCommand.ExecuteReader()
它在conn.open()周围高亮显示它,并给出了该错误。在我将我的sql数据库移到mac之前,它一直运行良好。(windows->mac)有区别吗?我从我的windows vista电脑上备份了我的东西,并在mac上还原了它。我不认为有什么区别,但我只是把它说出来。为什么会出现这种错误
谢谢
凯文我真的无法说出我脑子里到底出了什么问题 但找到答案的方法是在conn=New MySqlConnection上设置一个断点,并在逐步执行时查看您拥有的变量 如果问题发生在conn.Open行上,则可能是因为conn为null(无)。但是如果是这种情况,那么conn.ConnectionString应该抛出一个异常 另一个步骤是查看异常的堆栈跟踪,并查看从何处抛出异常。例如,它可能是mysql连接器内部某个地方的错误
很抱歉,我不能给你一个明确的答案,但我认为一些一般性的评论可能会帮助你找到解决方案或找到更多细节。我真的无法说出我头脑中的问题是什么 但找到答案的方法是在conn=New MySqlConnection上设置一个断点,并在逐步执行时查看您拥有的变量 如果问题发生在conn.Open行上,则可能是因为conn为null(无)。但是如果是这种情况,那么conn.ConnectionString应该抛出一个异常 另一个步骤是查看异常的堆栈跟踪,并查看从何处抛出异常。例如,它可能是mysql连接器内部某个地方的错误
很抱歉,我不能给你一个明确的答案,但我认为一些一般性的评论可能会帮助你找到解决方案或找到更多细节。你正在使用哪个版本的MySql?你看过这个错误的细节了吗 。。。这与空闲时间有关
如果您有与异常相关的完整堆栈跟踪,那么它可能会对问题有所帮助。您使用的是哪个版本的MySql?你看过这个错误的细节了吗 。。。这与空闲时间有关
如果您有与异常相关联的完整堆栈跟踪,那么它可能会说明问题。我建议您检查连接字符串。我使用了您的代码并连接到本地MYSQL数据库,没有错误。我建议查看您的连接字符串。我使用了您的代码并连接到本地MYSQL数据库,没有错误。我不想说。从你的描述很难判断这是否是同一个问题。我不想说。从你的描述很难判断这是否是同一个问题。好吧,我试过在它上面放一个断点,它说它没有值。我该怎么办?如果连接无效,那么您的分配代码一定无法工作。因此,我将查看conn=newmysqlconnection()。我不知道为什么它不工作,我在过去使用过类似的代码,它工作得很好。我想这可能与操作系统有关,可能与您使用的连接器版本有关。作为第一次尝试,也许可以尝试其他重载,将连接字符串提供给构造函数。但现在的问题是我无法接通。换句话说,我得到了如上所述的错误“无法连接到数据库”。如果我在没有If语句的情况下执行conn.open,我会得到一个comcast.net诸如此类的错误。你知道现在的问题是什么吗?我需要异常的完整细节,以便能够知道是什么,所以完整的异常消息等等。无法连接的最常见原因可能是您所在的计算机无法与数据库服务器通信,或者您尝试登录的用户没有权限。请记住,在MySQL中,任务是特定于用户来自的机器的。因此,请确保用户有权从您正在使用的计算机访问服务器。好的,我尝试了在服务器上放置断点,它说它的值为nothing。我该怎么办?如果连接无效,那么您的分配代码一定无法工作。因此,我将查看conn=newmysqlconnection()。我不知道为什么它不工作,我在过去使用过类似的代码,它工作得很好。我想这可能与操作系统有关,可能与您使用的连接器版本有关。作为第一次尝试,也许可以尝试其他重载,将连接字符串提供给构造函数。但现在的问题是我无法接通。换句话说,我得到了如上所述的错误“无法连接到数据库”。如果我在没有If语句的情况下执行conn.open,我会得到一个comcast.net诸如此类的错误。你知道现在的问题是什么吗?我需要异常的完整细节,以便能够知道是什么,所以完整的异常消息等等。无法连接的最常见原因可能是您所在的计算机无法与数据库服务器通信,或者您尝试登录的用户没有权限。请记住,在MySQL中,任务是特定于用户来自的机器的。因此,请确保用户具有从您正在使用的计算机访问服务器的权限。