Delphi7连接MySql数据库-DBGrid控件显示数据
一个简单的Delphi7小程序,使用MySql数据库做简单查询,用DBGrid控件显示结果,实现过程如下:
(1)在MySql中新建demouser表,插入记录用于测试。
(2)在Delphi7中新建项目。
(3)在From中添加组件。
组件Panel:pnl1
组件属性-属性值:
Caption-请输入工号:
组件Edit:edt1
组件Button:btn1
组件属性-属性值:
Caption-查询
组件ADOQuery:qry1
组件属性-属性值:
Active-True //设置SQL属性后取得表中数据,绑定的显示控件上可以实时出现数据
ConnectionString-Provider=MSDASQL.1;Persist Security Info=False;Data Source=MySqlOdbcU //ODBC方式连接MySql,参考:http://blog.csdn.net/akof1314/article/details/6822902
SQL-SELECT * FROM DEMOUSER;
组件DataSource:ds1
组件属性-属性值:
DataSet-qry1 //绑定数据集ADOQuery
组件DBGrid:dbgrd1 //认的情况下,dbgrid的数据修改就和打开数据库直接修改一样,修改完自动保存,除非修改了readonly(只读) enable(可选中)这些属性的默认值或者单独修改了字段的这两个属性
组件属性-属性值:
DataSource-ds1 //绑定数据源DataSource
Enabled-True //可选中?
ReadOnly-True //只读?
(4)在代码编辑窗口中增加代码。
unit DataInMysql; interface uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB, ADODB,ComObj, Grids, DBGrids, ExtCtrls; type
TForm1 = class(TForm)
qry1: TADOQuery;
ds1: TDataSource;
btn1: TButton;
dbgrd1: TDBGrid;
pnl1: TPanel;
edt1: TEdit;
procedure btn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end; var
Form1: TForm1; implementation
uses UserMessage;
{$R *.dfm} procedure TForm1.btn1Click(Sender: TObject);
var
s:string;
begin
s:='SELECT * FROM DEMOUSER where 1=1';
if edt1.Text<>'' then
begin
s:=s+' and id= '+edt1.Text;
end; with qry1 do
begin
Close;
SQL.Clear;
SQL.Add(s);
Open;
end;
end; end.
(5)运行项目,保存文件。
效果如下:
注意:选择【Project | View Source】,可以创建一个缺省的Delphi项目文件的源代码(.DPR),修改后双击它打开对应的项目,避免点击启动时总是启动其他项目。
program Project3; uses
Forms,
DataInMysql in 'DataInMysql.pas' {Form1}; //改这儿 {$R *.res} begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
Delphi7连接MySql数据库-DBGrid控件显示数据的更多相关文章
- 利用PHP实现登录与注册功能以及使用PHP读取mysql数据库——以表格形式显示数据
登录界面 <body><form action="login1.php" method="post"><div>用户名:&l ...
- NPOI导出WPF DataGrid控件显示数据
最近做个项目,需要导出DataGrid显示的数据,中间遇到了不少的坑,在此纪录一下,方便以后查看,也希望能给用到的人,一点帮助. 导出DataGrid显示的数据,并不是导出DataGrid的Items ...
- 使用Listview控件显示数据
1.图像列表控件 ImageList是含有图像对象的集合,可以通过索引或关键字引用该集合中的每个对象. ImageList空间的属性 属性 说明 Images 存储在图像列表中的所有图像 ImageS ...
- C# 解决ListView控件显示数据出现闪屏的问题
一.发现问题 如果发送数据过快的情况下,ListVies滚屏显示数据时会显示闪屏,如下所示现象: 二.解决问题 根据出现闪屏的情况,在网上查了资料要使用双缓存的办法来处理.其原理是数据在缓存区中进行处 ...
- asp.net LINQ LinqDataSource控件显示数据和DropdownList显示数据
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...
- 两种方法连接MySql数据库
.用MySQLDriverCS连接MySQL数据库 先下载和安装MySQLDriverCS,在安装文件夹下面找到MySQLDriver.dll,然后将MySQLDriver.dll添加引用到项目中. ...
- ADO.NET之使用DataGridView控件显示从服务器上获取的数据
今天回顾下ADO.NET中关于使用DataGridiew控件显示数据的相关知识 理论整理: 使用 DataGridView 控件,可以显示和编辑来自多种不同类型的数据源的表格数据. SqlDataAd ...
- JDBC Java 连接 MySQL 数据库
MySQL 版本:Server version: 5.7.17-log MySQL Community Server (GPL) 用于测试的 MySQL 数据库:game 查看数据库中的表 mysql ...
- DELPHI 使用dbexpress控件连接MySQL数据库方法
1. 在窗体上放置4个控件: SQLConnection1,SimpleDataSet1,DataSource1,DBGrid (注意: 如果 出现"Operation not allowe ...
随机推荐
- 深深感受 Promise.all 带来的速度提升
什么是Promise Promise 是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大.(摘抄自 阮一峰老师的 ECMAScript 6 入门).具体请查看阮一峰老师的这 ...
- js 实用小技巧
https://blog.csdn.net/www93111/article/details/76176771
- nginx插入lua脚本访问redis
目标:收集用户日志 流程: 浏览器端get方法将数据传到nginx服务 nginx收集到数据,执行内嵌lua脚本,访问redis,根据token获得用户id 将日志信息存入文件 1.nginx安装,参 ...
- myEclipse和eclipse从debug视图自动跳回default视图。
本来是吐槽文,找到了解决的插件,就改改标题了. debug的时候,可以从default视图自动跳转到debug视图,退出debug的时候,却不能自动切换回default视图. https://bugs ...
- (整理4)RPC服务和HTTP服务简单说明
很长时间以来都没有怎么好好搞清楚RPC(即Remote Procedure Call,远程过程调用)和HTTP调用的区别,不都是写一个服务然后在客户端调用么?这里请允许我迷之一笑~Naive!本文简单 ...
- javascript事件流机制
(1)冒泡型事件:事件按照从最特定的事件目标到最不特定的事件目标(document对象)的顺序触发. IE 5.5: div -> body -> document IE 6.0: div ...
- session和cookie的区别是什么,他们都是什么.
Session是存储在服务器端的,Cookie是存储在客户端的. Cookie是客户端保存用户信息的一种机制,用来记录用户的一些信息.如何识别特定的客户呢?cookie就可以做到.每次HTTP请求时, ...
- myBatis简学
mybatis使用: ①拷贝相关mybits ②编写对象关系映射,一般都是实体类名+Mapper.xml的格式 ③编写mybits配置文件: a)配置环境 b)配置映射文件地址 ④编写对象操作方法: ...
- [Codeforces375E]Red and Black Tree
Problem 给定一棵有边权的树.树上每个点是黑或白的.黑白点能两两交换. 求符合任意一个白点到最近黑点的距离小于等于x时,黑白点交换次数最少为多少. Solution 明显是一题树形DP.我们先跑 ...
- thinkphp5和thinkphp3.2.3中URL重写出现No input file specified
查询后解决办法是打开public目录下的.htaccess文件,把:RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L] 改为:RewriteRule ^(.*)$ i ...