下面是一个完整的示例代码,展示如何使用VB代码连接到WinCC的用户归档数据库,并将数据显示在MSFlexGrid控件中:
- Option Explicit
- Private Sub Form_Load()
- ' 引用Microsoft ActiveX Data Objects库
- Dim conn As ADODB.Connection
- Dim rs As ADODB.Recordset
- Dim sql As String
- Dim row As Integer
-
- ' 创建连接对象
- Set conn = New ADODB.Connection
-
- ' 设置连接字符串(根据您的实际数据库类型和路径进行修改)
- conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=path\to\your\database.mdb;"
-
- ' 打开连接
- conn.Open
-
- ' 创建记录集对象
- Set rs = New ADODB.Recordset
-
- ' 创建SQL查询语句
- sql = "SELECT * FROM hello"
-
- ' 执行查询
- rs.Open sql, conn
-
- ' 设置MSFlexGrid控件的列数
- MSFlexGrid1.Cols = rs.Fields.Count
-
- ' 将字段名添加到MSFlexGrid控件的第一行
- For row = 0 To rs.Fields.Count - 1
- MSFlexGrid1.TextMatrix(0, row) = rs.Fields(row).Name
- Next row
-
- ' 设置MSFlexGrid控件的行数
- MSFlexGrid1.Rows = rs.RecordCount + 1
-
- ' 将记录集中的数据逐行添加到MSFlexGrid控件中
- row = 1
- While Not rs.EOF
- For col = 0 To rs.Fields.Count - 1
- MSFlexGrid1.TextMatrix(row, col) = rs.Fields(col).Value
- Next col
- row = row + 1
- rs.MoveNext
- Wend
-
- ' 关闭记录集和连接对象
- rs.Close
- Set rs = Nothing
- conn.Close
- Set conn = Nothing
- End Sub
复制代码
在代码中,请根据您的实际数据库类型和路径修改连接字符串(`conn.ConnectionString`)和SQL查询语句(`sql`)。同时,根据用户归档数据库中的字段名称和顺序修改MSFlexGrid控件单元格中的字段名和数据(`MSFlexGrid1.TextMatrix(row, col)`)。 |