Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual Basic从mysql表获取数据_Mysql_Vb.net_Visual Studio 2010 - Fatal编程技术网

Visual Basic从mysql表获取数据

Visual Basic从mysql表获取数据,mysql,vb.net,visual-studio-2010,Mysql,Vb.net,Visual Studio 2010,我正试图从表中获取一些数据,并得到错误:“无效的对象名‘h’”。我的代码是 Dim h为十进制 “一些代码 cmd2=New-SqlCommand(“插入到h中,从dbo.Utakmice中选择KvotaX,其中ID=@s1”,conn) cmd2.Parameters.AddWithValue(“@s1”,myReader.GetInt32(1)) “一些代码 f=cmd2.ExecuteOnQuery() 我不知道我做错了什么。dbo.Utakmice数据类型中的KvotaX是实值。您尝试

我正试图从表中获取一些数据,并得到错误:“无效的对象名‘h’”。我的代码是

Dim h为十进制
“一些代码
cmd2=New-SqlCommand(“插入到h中,从dbo.Utakmice中选择KvotaX,其中ID=@s1”,conn)
cmd2.Parameters.AddWithValue(“@s1”,myReader.GetInt32(1))
“一些代码
f=cmd2.ExecuteOnQuery()

我不知道我做错了什么。dbo.Utakmice数据类型中的KvotaX是实值。

您尝试使用sql语句设置h的值。这是不对的

Dim h As Decimal
cmd2 = New SqlCommand("select KvotaX from dbo.Utakmice where ID=@s1 ", conn)
cmd2.Parameters.AddWithValue("@s1", myReader.GetInt32(1))
h = Convert.ToDecimal(cmd2.ExecuteScalar)
选择与传入参数对应的记录,然后读取ExecuteScalar方法的返回值。请注意,仅当查询返回一条记录和一列时,此操作才有效。最好在分配给小数之前安全地检查返回值

Dim o = cmd2.ExecuteScalar
if o IsNot Nothing Then
    h = Convert.ToDecimal(o)
    .....
End If

但是,您的代码暗示了一个事实,即您正试图从打开的MySqlDataReader获取s1参数的值。这是不可能的,因为通常情况下,在datareader保持打开状态之前,datareader使用的连接一直处于繁忙状态。

如果您只是尝试获取数据,我认为您不希望将
插入h


删除这个短语,看看你是否得到了你想要的。

表h确实存在吗?这是一个好迹象。这意味着您成功连接到数据库并提交了查询,并且能够处理来自数据库服务器的响应。很多事情已经做对了。现在,您的数据库中有一个名为“h”的表吗?实际上,h是十进制变量。我正在尝试将数据提取到变量中。声明是代码的第一行。它工作正常。我的MySqlDataReader连接没有问题。可能是因为我有MultipleActiveResultSets=true;在连接字符串中。很高兴知道,我只是在搜索该键是否对MySql也有效。