Delphi ADO组件中的 ADOTable、ADOQurey 无SQL语句实现增、删、改、查

准备:

数据库是Acess数据库

1.放一个 Adoconnection1到 表单上,设置好数据连接字符串 并 设置 connected 属性  为 true
2 设置 adoquery1的connection 属性为 adoconnection1
3  设置 adoquery1的 sql 属性为 select * from 表名
4  设置 adoquery1的 active =true
5  设置 datasource1的dataset 属性为 adoquery1
6.再放一个 DBNavigator1  设置 datasource=datasource1
7.设置 dbgrid1的 datasource=datasource1 

一、ADOTable对数据表的操作

增加、修改与删除:(以线路管理为例)
1、增加:
procedure TForm7.Button1Click(Sender: TObject);
begin
ADOTable1.TableName:='线路管理';
ADOTable1.Close;
ADOTable1.Open;
adotable1.Edit;
adotable1.Insert;
adotable1.Fields[1].AsString:=edit1.Text;
adotable1.Fields[2].AsString:=edit2.Text;
adotable1.Fields[3].AsString:=edit3.Text;
adotable1.Post;
end;

2、修改:
procedure TForm7.Button2Click(Sender: TObject);
begin
adotable1.Edit;
adotable1.FieldByName('线路编号').AsString:=trim(edit1.Text);
adotable1.FieldByName('线路名称').AsString:=trim(edit2.Text);
adotable1.FieldByName('备注').AsString:=trim(edit3.Text);
end;

3、删除:
procedure TForm7.Button3Click(Sender: TObject);
begin
if Application.MessageBox('确实要删除当前数据吗?','提示',mb_YesNo)=ID_Yes then
begin
try
        ADOTable1.Delete;
        Application.MessageBox('删除成功','提示',64);
except
        Application.MessageBox('系统出错','提示',64);
end;
end;
end;

二、adoquery对数据库的增加,查询,编辑,删除:
1、增加:
procedure TForm8.Button1Click(Sender: TObject);
begin
ADOQuery1.Close;
ADOQuery1.Open;
ADOQuery1.Edit;
ADOQuery1.Insert;
ADOQuery1.Fields[0].AsString:=edit1.Text;
ADOQuery1.Fields[1].AsString:=edit2.Text;
ADOQuery1.Fields[2].AsString:=edit3.Text;
ADOQuery1.Fields[3].AsString:=edit3.Text;
ADOQuery1.Fields[4].AsString:=edit3.Text;
ADOQuery1.Fields[5].AsString:=edit3.Text;
ADOQuery1.Fields[6].AsString:=edit3.Text;
ADOQuery1.Post;
end;

2、查询:
procedure TForm8.Button2Click(Sender: TObject);
begin
with ADOQuery1 do
begin
close;
sql.clear;
sql.add('select * from 班次管理 where 班次编号='''+edit1.text+'''or 班次名称='''+edit2.text+''' or 开始时间='''+edit3.text+''' or 结束时间='''+edit4.text+''' or 零点之前数据流向='''+edit5.text+''' or 零点之后数据流向='''+edit6.text+''' or 备注='''+edit7.text+'''');     //书写SQL语句时的格式很重要
open;
if dbgrid1.DataSource.DataSet.IsEmpty then  //判断查询结果是否为空
begin
showmessage('输入错误!');
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.sql.Add('select * from 班次管理');
adoquery1.Open;
end;
end;

end;

3、更改:
procedure TForm8.Button3Click(Sender: TObject);
begin
adoquery1.Edit;
adoquery1.FieldByName('班次名称').AsString:=trim(edit2.Text);
adoquery1.FieldByName('开始时间').AsString:=trim(edit3.Text);
adoquery1.FieldByName('结束时间').AsString:=trim(edit4.Text);
adoquery1.FieldByName('零点之前数据流向').AsString:=trim(edit5.Text);
adoquery1.FieldByName('零点之后数据流向').AsString:=trim(edit6.Text);
adoquery1.FieldByName('备注').AsString:=trim(edit7.Text);
adoquery1.Append;
end;

4、删除:
procedure TForm8.Button4Click(Sender: TObject);
begin
if Application.MessageBox('确实要删除当前数据吗?','提示',mb_YesNo)=ID_Yes then
begin
try
        adoquery1.Delete;
        Application.MessageBox('删除成功','提示',64);
except
        Application.MessageBox('系统出错','提示',64);
end;
adoquery1.SQL.Clear;       //刷新DBGRID 中显示的内容
adoquery1.SQL.Add('select * from 班次管理');
adoquery1.Open;
end;
end;

5、显示全部:
procedure TForm8.Button5Click(Sender: TObject);
begin
with ADOQuery1 do
begin
close;
sql.clear;
sql.add('select * from 班次管理');
open;
end;
end; 
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/478684.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

嵌入式的C/C++:深入理解 static、const 与 volatile 的用法与特点

目录 一、static 1、static 修饰局部变量 2、 static 修饰全局变量 3、static 修饰函数 4、static 修饰类成员 5、小结 二、const 1、const 修饰普通变量 2、const 修饰指针 3、const 修饰函数参数 4. const 修饰函数返回值 5. const 修饰类成员 6. const 与 #defi…

时间请求参数、响应

(7)时间请求参数 1.默认格式转换 控制器 RequestMapping("/commonDate") ResponseBody public String commonDate(Date date){System.out.println("默认格式时间参数 date > "date);return "{module : commonDate}"; }…

SpringBoot(9)-Dubbo+Zookeeper

目录 一、了解分布式系统 二、RPC 三、Dubbo 四、SpringBootDubboZookeeper 4.1 框架搭建 4.2 实现RPC 一、了解分布式系统 分布式系统:由一组通过网络进行通信,为了完成共同的任务而协调工作的计算机节点组成的系统 二、RPC RPC:远程…

单片机学习笔记 8. 矩阵键盘按键检测

更多单片机学习笔记:单片机学习笔记 1. 点亮一个LED灯单片机学习笔记 2. LED灯闪烁单片机学习笔记 3. LED灯流水灯单片机学习笔记 4. 蜂鸣器滴~滴~滴~单片机学习笔记 5. 数码管静态显示单片机学习笔记 6. 数码管动态显示单片机学习笔记 7. 独立键盘 目录 0、实现的…

道品智能科技移动式水肥一体机:农业灌溉施肥的革新之选

在现代农业的发展进程中,科技的力量正日益凸显。其中,移动式水肥一体机以其独特的可移动性、智能化以及实现水肥一体化的卓越性能,成为了农业领域的一颗璀璨新星。它不仅改变了传统的农业灌溉施肥方式,更为农业生产带来了高效、精…

android 音效可视化--Visualizer

Visualizer 是使应用程序能够检索当前播放音频的一部分以进行可视化。它不是录音接口,仅返回部分低质量的音频内容。但是,为了保护某些音频数据的隐私,使用 Visualizer 需要 android.permission.RECORD_AUDIO权限。传递给构造函数的音频会话 …

计算机网络八股整理(一)

计算机网络八股文整理 一:网络模型 1:网络osi模型和tcp/ip模型分别介绍一下 osi模型是国际标准的网络模型,它由七层组成,从上到下分别是:应用层,表示层,会话层,传输层,…

利用Python爬虫获得1688按关键字搜索商品:技术解析

在电商领域,1688作为中国领先的B2B电商平台,其商品搜索功能对于商家来说具有极高的价值。通过获取搜索结果,商家可以更好地了解市场趋势,优化产品标题,提高搜索排名。本文将介绍如何使用Python编写爬虫,以获…

Spring Boot集成MyBatis-Plus:自定义拦截器实现动态表名切换

Spring Boot集成MyBatis-Plus:自定义拦截器实现动态表名切换 一、引言 介绍动态表名的场景需求,比如多租户系统、分表分库,或者不同业务模块共用一套代码但操作不同表。说明 MyBatis-Plus 默认绑定固定表名的问题。 二、项目配置 1. 集成 M…

(原创)Android Studio新老界面UI切换及老版本下载地址

前言 这两天下载了一个新版的Android Studio,发现整个界面都发生了很大改动: 新的界面的一些设置可参考一些博客: Android Studio新版UI常用设置 但是对于一些急着开发的小伙伴来说,没有时间去适应,那么怎么办呢&am…

数据新时代:如何选择现代数据治理平台(上)

谈现代数据治理系统的十大架构特征 最近一位老友找到我,咨询他的数据治理平台到底该不该换,背景是这样的:若干年前采购了一个市场主流的数据治理平台,功能大概就是数据治理三件套——标准、元数据和质量等经典数据治理的功能。现…

抖音SEO矩阵系统:开发技术分享

市场环境剖析 短视频SEO矩阵系统是一种策略,旨在通过不同平台上的多个账号建立联系,整合同一品牌下的各平台粉丝流量。该系统通过遵循每个平台的规则和内容要求,输出企业和品牌形象,以矩阵形式增强粉丝基础并提升商业价值。抖音作…

从零开始打造个人博客:我的网页设计之旅

✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 ✨特色专栏&#xff1a…

STM32F103C8T6实时时钟RTC

目录 前言 一、RTC基本硬件结构 二、Unix时间戳 2.1 unix时间戳定义 2.2 时间戳与日历日期时间的转换 2.3 指针函数使用注意事项 ​三、RTC和BKP硬件结构 四、驱动代码解析 前言 STM32F103C8T6外部低速时钟LSE(一般为32.768KHz)用的引脚是PC14和PC…

Jmeter中的定时器

4)定时器 1--固定定时器 功能特点 固定延迟:在每个请求之间添加固定的延迟时间。精确控制:可以精确控制请求的发送频率。简单易用:配置简单,易于理解和使用。 配置步骤 添加固定定时器 右键点击需要添加定时器的请求…

Fakelocation Server服务器/专业版 ubuntu

前言:需要Ubuntu系统 Fakelocation开源文件系统需求 Ubuntu | Fakelocation | 任务一 任务一 更新Ubuntu(安装下载不再赘述) sudo -i # 提权 sudo apt update # 更新软件包列表 sudo apt upgrade # 升级已安装的软…

5.5 W5500 TCP服务端与客户端

文章目录 1、TCP介绍2、W5500简介2.1 关键函数socketlistensendgetSn_RX_RSRrecv自动心跳包检测getSn_SR 1、TCP介绍 TCP 服务端: 创建套接字[socket]:服务器首先创建一个套接字,这是网络通信的端点。绑定套接字[bind]:服务器将…

超高流量多级缓存架构设计!

文章内容已经收录在《面试进阶之路》,从原理出发,直击面试难点,实现更高维度的降维打击! 文章目录 电商-多级缓存架构设计多级缓存架构介绍多级缓存请求流程负载均衡算法的选择轮询负载均衡一致性哈希负载均衡算法选择 应用层 Ngi…

信创改造 - TongRDS 替换 Redis

记得开放 6379 端口哦 1)首先在服务器上安装好 TongRDS 2)替换 redis 的 host,post,passwd 3)TongRDS 兼容 jedis # 例如:更改原先 redis 中对应的 host,post,passwd 改成 TongRDS…

vue3 uniapp 扫普通链接或二维码打开小程序并获取携带参数

vue3 uniapp 扫普通链接或二维码打开小程序并获取携带参数 微信公众平台添加配置 微信公众平台 > 开发管理 > 开发设置 > 扫普通链接二维码打开小程序 配置链接规则需要下载校验文档给后端存入服务器中,保存配置的时候会校验一次,确定当前的配…