要实现连接,查询,插入,删除,显示
使用Access数据库,表可以简单一点,只用1个表2-3个字段就可以了因为是我拿来参考所用,希望代码能尽量简单一点!
我找到很久都没有找到合适的源码,希望各位大侠帮忙!实例最好打包发我邮箱!先收到,先给分
[email protected]
使用Access数据库,表可以简单一点,只用1个表2-3个字段就可以了因为是我拿来参考所用,希望代码能尽量简单一点!
我找到很久都没有找到合适的源码,希望各位大侠帮忙!实例最好打包发我邮箱!先收到,先给分
[email protected]
-----------
桌面上放一个ADOConnection,设置ConnnectionString 为你的连接字符串
在桌面上放一个ADOQuery,设置Connection为前面连接好的ADOConnection
具体操作
-----------
显示,删除,插入都可以通过sql语句来完成
比如查询全部后显示:
首先在桌面上放一个DBGrid
然后写代码
with self.adoquery1 do
begin
sql.clear;
sql.add('select * from table');//table为你数据库中的其中一个表
open;
end;
self.dbgrid.dataset.datasource := self.adoquery1其他的操作类似
代码写的乱,也不完整,不过大体就这样,其他操作改变sql语句就OK了
你可以买本书来看
那样就比较全面了
比如我在listbox里面显示,或者是label里显示因为我现在只是一个参考,实际上我实现时,还可能有其他情况出现先感谢楼上的朋友,希望集思广益,大家踊跃发言
Label1.Caption := AdoQuery1.Fields[0].AsString;
還可以通過字段名來訪問,如:
Label1.Caption := AdoQuery1.FieldByName('name').AsString;
duanhai(段海)的方法似乎只能访问一条记录吧?
我想要访问查询后的所有结果,应当如何?
begin
close;
sql.Clear;
sql.Add('select * from login');
open;
end;
ADOQuery1.First;
while not ADOQuery1.Eof do
begin //建议
showmessage(ADOQuery1.FieldByName('name').Text);
form4.ADOQuery1.Next;
end;
with adoquery1 do
begin
close;
sql.clear;
sql.add(delete from '+tablename+'where....);
ExecSql;//删除
close;
end;
if(not fileexists(DBPath) ) then
begin
showmessage('数据库文件被破坏,请重新安装软件');
Application.Terminate;
end;
ConnStr:='Provider=Microsoft.Jet.OLEDB.4.0;'
+ 'Data Source='
+ DBPath
+ 'Persist Security Info=False';
showmessage(DBPath);
ADOQuery1.ConnectionString := ConnStr; strSQL:='selcet * from worktime';
with ADOQuery1 do
begin
SQL.Add(strSQL);
ExecSQL;
end;但是这里为什么执行到"ExecSQL;"就出错了?
请各位指点
clear一下
ConnStr:='Provider=Microsoft.Jet.OLEDB.4.0;'
+ 'Data Source='
+ DBPath
+ 'Persist Security Info=False';应为
ConnStr:='Provider=Microsoft.Jet.OLEDB.4.0;'
+ 'Data Source='
+ DBPath
+ ';Persist Security Info=False';少了一个分号- -b