我想用ACCESS数据库做一个报警记录代码如下
Private Sub Command1_Click()
Adodc1.Recordset.AddNew
Adodc1.Recordset.Fields(0) = "加热器"
Adodc1.Recordset.Fields(1) = "烘干机构"
Adodc1.Recordset.Fields(2) = "加热器过热请注意!"
Adodc1.Recordset.Fields(3) = Now
Adodc1.Recordset.Update
End SubPrivate Sub Form_Load()
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\SKJ.mdb;Persist Security Info=False"
Adodc1.RecordSource = "select * from 报警记录"
Adodc1.Refresh
End Sub
然后用DataGrid1的DataSource直接连到Adodc1里
现在我是想当窗体加载后DataGrid1控件里数据为空,当command1按钮触发事件后在DataGrid1控件上显示最新报警记录,不显示历史数据库里边的内容。请教高手如何解决!顺便问一下DataGrid1控件为何调整了列宽就不能读取数据库的内容?
Private Sub Command1_Click()
Adodc1.Recordset.AddNew
Adodc1.Recordset.Fields(0) = "加热器"
Adodc1.Recordset.Fields(1) = "烘干机构"
Adodc1.Recordset.Fields(2) = "加热器过热请注意!"
Adodc1.Recordset.Fields(3) = Now
Adodc1.Recordset.Update
End SubPrivate Sub Form_Load()
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\SKJ.mdb;Persist Security Info=False"
Adodc1.RecordSource = "select * from 报警记录"
Adodc1.Refresh
End Sub
然后用DataGrid1的DataSource直接连到Adodc1里
现在我是想当窗体加载后DataGrid1控件里数据为空,当command1按钮触发事件后在DataGrid1控件上显示最新报警记录,不显示历史数据库里边的内容。请教高手如何解决!顺便问一下DataGrid1控件为何调整了列宽就不能读取数据库的内容?
ADO对象或者DAO都可以很方便的实现啊。
用ADO+MSHGRID很容易能实现你要的功能。
Adodc1.RecordSource = "select * from 报警记录 where LogDate > #" format(now, "yyyy/mm/dd hh:nn:ss") & "#"
用MSFlexGrid控件
用MSFlexGrid1.TextMatrix(row,col)添加数据
方案2
再加一个Adodc2
Adodc2.RecordSource = "select top 1 * from 报警记录 order by mytime desc"
DataGrid1的DataSource直接连到Adodc2里