如何将sql数据库中某个字段的值赋值给一个数组,急,请高手相助!

jujumo 2007-08-30 09:09:39
代码如下:
Dim a() As Single ‘定义动态数组
Dim i As Integer = 0
Dim strsql As String
Dim sqlcon As New SqlConnection("database=computer;initial catalog=数据库名;Integrated Security=SSPI")
Dim sqlcom As New SqlClient.SqlCommand ' 声明一个SqlCommand变量
Dim sqldr As SqlClient.SqlDataReader ' 声明一个SqlDataReader变量
Try
Dim date1, date2 As Date ’声明查询的开始和结束时间
date1 = Convert.ToDateTime(DateTimePicker1.Text) ‘将开始时间赋给data1
date2 = Convert.ToDateTime(DateTimePicker2.Text)


strsql = "select 位移 from 多点位移计原始测值表 where 测时 >= '" + Trim(date1) + "' and 测时 <= '" + Trim(date2) + "' "
sqlcom.Connection = sqlcon
sqlcom.CommandText = strsql
sqlcon.Open()
sqldr = sqlcom.ExecuteReade(CommandBehavior.CloseConnection)

Do Until sqldr.Read = False
’我个人认为问题在下面的语句
a(i) = Convert.ToSingle(sqldr("字段"))
i += 1
Loop
sqldr.Close()
sqlcon.Close()

Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End If


运行后提示是“未将对象设置为对象的实例”,由于本人是新手,又急于要从数据库中读出数据赋给数组后做计算用,所以请各位高手帮忙,问题解决,高分送上!!!
...全文
511 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
jujumo 2007-08-30
  • 打赏
  • 举报
回复
lxcnn你能花点时间,针对我的问题(vs2003)帮忙修改下源代码吗?
-过客- 2007-08-30
  • 打赏
  • 举报
回复
vs2003不支持泛型,我这没有vs2003环境,按你原来的思路,可以用孟子的方法

当然,vs2003 也可以用ArrayList,不过ArrayList需要在使用时转换类型,而不是在Add时转换
jujumo 2007-08-30
  • 打赏
  • 举报
回复
首先 我用的是vs2003 的vb.net 楼上的 “Dim a As New List(Of Single)()” 好像定义不起来。 能否解释下,我是新手,能否写的详细些,谢谢大家了,在线等
jxzhang615 2007-08-30
  • 打赏
  • 举报
回复
高人来了,只管jf吧
-过客- 2007-08-30
  • 打赏
  • 举报
回复
如果是2.0,觉得用泛型更好一些

Dim a() As Single
Dim i As Integer = 0
----->
Dim a As New List(Of Single)()


a(i) = Convert.ToSingle(sqldr("food_id"))
i += 1
----->
a.Add(Convert.ToSingle(sqldr("字段")))


孟子E章 2007-08-30
  • 打赏
  • 举报
回复
ReDim Preserve a(i)
a(i) = Convert.ToSingle(sqldr("字段"))
jujumo 2007-08-30
  • 打赏
  • 举报
回复
谢谢孟子 ,可以用了,同时也谢谢LXCNN 问下怎么给你们加分。感受到温暖了,以后向大家多多学习了

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧