Sqlce的整个数据读取过程与pc上的没有什么差别:1、建立数据连接;2、对数据进行查询得到结果集;3、读取结果集进行数据处理。
Sqlce是通过 SqlCeConnection建立一个本地文件的SQLCE连接,在建立数据库连接成功以后,通过SqlCeConnection建立SqlCeCommand对象,通过向SqlCeCommand赋予sql语句实现对数据库记录的查询。在这里一般采用的两种数据记录集读取方式:SqlCeDataReader和SqlCeDataAdapter。在下文程序中,我将分别进行描述。
‘建立数据库连接
cn = New SqlCeConnection("Data Source=\My Documents\hycrm.sdf")
cn.Open()
‘根据查询得到的记录集进行逐条的处理分析 在这种情况下一般采用SqlCeDataReader进行数据读取
Try
Dim cmd As SqlCeCommand = cn.CreateCommand
cmd.CommandText = "select CreateDate from CorporationInfo group by CreateDate order by CreateDate"
Dim reader As SqlCeDataReader
reader = cmd.ExecuteReader
Do While reader.Read
If Trim(Str(Year(reader.Item("CreateDate")))) <> m_szYear Then
TempStr = Trim(Str(Year(reader.Item("CreateDate")))) + "年度备案表"
nodX = node.Nodes.Add(TempStr)
SearchZh(Trim(Str(Year(reader.Item("CreateDate")))), nodX)
m_szYear = Trim(Str(Year(reader.Item("CreateDate"))))
End If
Loop
reader.Close()
Catch sqlex As SqlCeException
Dim sqlError As SqlCeError
For Each sqlError In sqlex.Errors
MessageBox.Show(sqlError.Message)
Next
Catch ex As Exception
MessageBox.Show(ex.Message)
Finally
End Try
‘当需要将查询得到的记录集在DateGrid上进行显示的时候,就需要使用SqlCeDataAdapter对数据进行批量读取,程序如下:
Dim sqlstr As String
Dim cmd As New SqlCeCommand
Dim ds As New DataSet
'cn = New SqlCeConnection("\My Documents\hycrm.sdf")
'cn.Open()
sqlstr = "select * from CorporationInfo”
cmd = cn.CreateCommand
cmd.CommandText = sqlstr
Dim da As New SqlCeDataAdapter(cmd)
da.Fill(ds)
发表于 @ 2007年04月18日 09:37:00|评论(loading...)|编辑