delphi7 TADODataSet TDBGridExt 简单应用
来源:互联网 发布:苹果mac怎么更新不了 编辑:程序博客网 时间:2024/05/21 12:45
unit Unit2;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, DB, ADODB, ComCtrls, GridsEh, DBGridEh, DBGridExt, StdCtrls, Buttons;type TForm2 = class(TForm) dsData: TADODataSet; stat1: TStatusBar; dbgrdxt1: TDBGridExt; //在object inspector 里DataSource属性里添加 ds1 btn1: TBitBtn; conConnectionSqlServer: TADOConnection; ds1: TDataSource; function ExecutesqlReturnRecord(const sql :string):TADODataSet; procedure btn1Click(Sender: TObject); procedure FormCreate(Sender: TObject); private { Private declarations } bDBisConnected:Boolean; public { Public declarations } function DbConnect:Boolean; end;var Form2: TForm2;implementation{$R *.dfm}function TForm2.DbConnect:Boolean;//封装一个数据库连接函数begin Result := false; if not bDBisConnected then begin with dsData do begin //TADOConnection 和 TADODataSet 都有 ConnectionString 属性 TADODataSet允许直接连接数据库 Connection.ConnectionString := 'Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=testDB;password =123456;Data Source=LJF-PC\LJF'; try //Connection.Create(nil); Connection.ConnectionTimeout := 20; Connection.CommandTimeout := 30 ; Connection.Connected:=True; Result := True; bDBisConnected := True; except Result :=False; bDBisConnected := False; ShowMessage('not connected'); // raise; // Exit; end; end; end else Result := True;end;function TForm2.ExecutesqlReturnRecord(const sql :string):TADODataSet;var lCursor: TCurSor;begin Result := nil; try Result := TAdoDataset.Create(nil); Result.Connection := dsData.Connection; Result.LockType := ltUnspecified; //用来设置或取得Dataset打开时,记录如何锁定 1 ltUnspecified不指定锁定类型 ltReadOnly只读 ltBatchOptimistic 批量优化锁定.... Result.CommandTimeout := 1800; if bDBisConnected then begin Result.Close; Result.CommandText := sql; lCursor := Screen.Cursor; Screen.Cursor := crSQLWait; try Result.Open;//Derived from TDataSet //open相当于将active属性设置为true,Dataset状态为打开,也将触发一些相应的事件 ,数据集状态为dsBrowse Screen.Cursor := crArrow; except on E: Exception do begin ShowMessage(E.Message); raise; end; end; end;; except on E: Exception do begin ShowMessage(E.Message); raise; end; end;end;procedure TForm2.btn1Click(Sender: TObject);begin dbgrdxt1.ClearColWidthList; dbgrdxt1.DataSource.DataSet := ExecutesqlReturnRecord('SELECT [ID],[name],[score] FROM [testDB].[dbo].[stu]');end;procedure TForm2.FormCreate(Sender: TObject);begin if DbConnect then stat1.Panels[0].Text := '数据库已连接!' else stat1.Panels[0].Text := '数据库未连接!';end;end.
0 0
- delphi7 TADODataSet TDBGridExt 简单应用
- delphi7 TADOConnection TADODataSet 简单应用
- delphi7 TGauge Tprogressbar 简单应用
- delphi7 TRzCheckTree TImageList 简单应用
- delphi7 TActionManager TTreeView 简单应用
- 应用TADOConnection和TADODataSet组件
- 从delphi7 到 Delphi2010 ---(四) TAdoDataset ,Decimal 字段
- 应用TADOConnection、TADODataSet和TADOCommand组件
- delphi7 ADO 方式连接 sqlserver2008/2005 简单应用
- Delphi7简单DirectUI界面源码
- Delphi7简单DirectUI界面源码
- 如何用tadodataset.append
- Delphi7实现B/S应用的注意事项
- Delphi7做WebService应用pb调用
- Delphi7学习(一个简单的排序)
- delphi7生成简单的验证识别码
- 067_《Delphi7组件与分布式应用开发》
- SPCOMM控件在Delphi7.0串口通信中的应用
- c++11编译错误 Enable multithreading to use std::thread: Operation not permitted
- python拷贝对象
- [2016-10-15]Java中static的使用
- leveldb源码分析
- SQL server 连接字符串
- delphi7 TADODataSet TDBGridExt 简单应用
- Android自动化测试之Robotium之学习一
- codeVS 3115 高精度练习之减法
- 数据结构实验之栈一:进制转换(java实现)
- PHP中foreach的用法和实例
- 旧版本ubuntu更新软件的方法
- android使用HttpURLConnection获取网站源码
- Java线程和多线程(十)——TimerTask
- Web前端开发的问题汇总