Delphi ADOQuery连接数据库的查询、插入、删除、修改
2012-12-15 14:17 李龙江 阅读(15524) 评论(1) 编辑 收藏 举报//查询记录 procedure TForm1 . Button1Click(Sender: TObject); begin ADOQuery . Close; ADOQuery . SQL . Clear; ADOQuery . SQL . Add( 'select * from YourTABLE where 查询条件' ); ADOQuery . Open; //插入记录 procedure TForm1 . Button2Click(Sender: TObject); begin ADOQuery . Close; ADOQuery . SQL . Clear; ADOQuery . SQL . Text:= 'insert into YourTABLE(字段1,字段2) values(:字段1,:字段2)' ; // ADOQuery.SQL.Add('insert into YourTABLE values(:字段1)'); ADOQuery . Parameters . ParamByName( '字段1' ).Value:=trim(Edit1 . Text); ADOQuery . Parameters . ParamByName( '字段2' ).Value:=trim(Edit2 . Text); ADOQuery . ExecSQL; end ; //删除记录 procedure TForm1 . Button3Click(Sender: TObject); begin ADOQuery . Close; ADOQuery . SQL . Clear; ADOQuery . SQL . Text:= 'Delete from YourTABLE where 字段3=:字段3' ; //这里没有添加where的条件判断,实际使用时,注意添加判断 // ADOQuery.SQL.Add('Delete from NEW_TABLE where 字段3=:字段3'); ADOQuery . Parameters . ParamByName( '字段3' ).Value:=trim(Edit3 . Text); ADOQuery . ExecSQL; //删除记录也可用DeleteRecords()函数 procedure DeleteRecords(AffectRecords: TAffectRecords = arAll); 这个函数有一个参数:AffectRecords可以取如下的值: 1 、arCurrent :删除当前记录 2 、arFiltered :删除符合Filter过滤后的所有记录(如果你使用Filter过滤的话) 3 、arAll :删除所有记录 4 、arAllChapters :Delete affects all chapters(ADO chapters) //修改记录 procedure TForm1 . Button4Click(Sender: TObject); begin ADOQuery . Close; ADOQuery . SQL . Clear; ADOQuery . SQL . Text:= 'Update YourTABLE SET 字段4=:字段4' ; //这里没有添加where的条件判断,实际使用时,注意添加判断 // ADOQuery.SQL.Add('Update YourTABLE SET 字段4=:字段4'); ADOQuery . Parameters . ParamByName( '字段4' ).Value:=trim(Edit4 . Text); ADOQuery . ExecSQL; //即时更新插入、删除、修改后的记录 在上面插入、删除、修改的语句后添加如下代码即可: ADOQuery . Close; ADOQuery . SQL . Add( 'select * from YourTABLE where 查询条件' ); ADOQuery . Open; //使用ADOQuery时注意: |
1、如果你需要更改数据,query.requestlive必须为true
2、如果有输入参数的时候,容易出错,通常的错法是这样:
比如:“WHERE abc = : abc”
改正如下:“WHERE abc=:abc”就是说=:前后都不能留空格。
3、ADOQuery.Open与ADOQuery.ExecSQL 有不同之处。
ADOQuery.Open一般用在查询,select时候;而ADOQuery.ExecSQL用在insert,delete,update等。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现