-----------开发环境Delphi7
需要Uses ComOb, ADOInt;
----图片
不要去纠结报错问题,哈哈哈
--------------------------------
------------------
SQL Server 2008 Express版的
----------用到一个表
CREATE TABLE [dbo].[Test_01](
[MYID] [varchar](20) NOT NULL,
[MYName] [varchar](50) NULL
)
----------
insert into Test_01 values('A001','Test_A001'),('A002','Test_A002'),('A003','Test_A003')
这里插入三笔数据
-------------------------------
注意这个的配置:
const ConStr:string='Provider=SQLOLEDB.1;Password=sa123456;Persist Security Info=True;User ID=sa;Initial Catalog=Test;Data Source=192.168.1.50\SQLEXPRESS';
Provider=SQLOLEDB.1;
Password=sa123456;//密码
Persist Security Info=True;
User ID=sa;//登入名
Initial Catalog=Test;//数据库名称
Data Source=192.168.1.50\SQLEXPRESS//数据库来源,,一般填写IP就行,我这个是精简版的SQL Server 2008 所以用了192.168.1.50\SQLEXPRESS
如果觉得这个太坑,请拖一个ADOConnection控件配置好,再把ADOConnection.ConnectionString拷贝出来就行;
-------------------------------------------------------------------------------------------------------------------------------------------------------
----Unit开始
1 unit Unit1; 2 3 interface 4 5 uses 6 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 7 Dialogs, ComObj, StdCtrls, ADOInt; 8 9 type 10 TForm1 = class(TForm) 11 Button1: TButton; 12 Button2: TButton; 13 Edit1: TEdit; 14 Edit2: TEdit; 15 Button3: TButton; 16 Button4: TButton; 17 Button5: TButton; 18 Button6: TButton; 19 Button7: TButton; 20 procedure Button1Click(Sender: TObject); 21 procedure Button2Click(Sender: TObject); 22 procedure Button3Click(Sender: TObject); 23 procedure Button4Click(Sender: TObject); 24 procedure Button5Click(Sender: TObject); 25 procedure Button6Click(Sender: TObject); 26 procedure Button7Click(Sender: TObject); 27 private 28 procedure SetEditText; 29 function CheckQueryActive:Boolean; 30 { Private declarations } 31 public 32 { Public declarations } 33 end; 34 35 var 36 Form1: TForm1; 37 38 implementation 39 40 var 41 ADOCon,ADOQuery:OleVariant; 42 const ConStr:string='Provider=SQLOLEDB.1;Password=sa123456;Persist Security Info=True;User ID=sa;Initial Catalog=Test;Data Source=192.168.1.50\SQLEXPRESS'; 43 {$R *.dfm} 44 45 procedure TForm1.Button1Click(Sender: TObject); 46 begin 47 //连接数据库 48 if VarIsEmpty(ADOCon) then 49 ADOCon:=CreateOleObject('ADODB.Connection'); 50 //if VarIsNull(ADOCon) then 51 // ADOCon:=CreateOleObject('ADODB.Connection'); 52 ADOCon.Open(ConStr); 53 end; 54 55 procedure TForm1.Button2Click(Sender: TObject); 56 begin 57 ADOCon.Close; 58 end; 59 60 procedure TForm1.Button3Click(Sender: TObject); 61 begin 62 if VarIsEmpty(ADOCon) then 63 begin 64 ShowMessage('数据库没有连接!'); 65 Exit; 66 end; 67 {if VarIsNull(ADOCon) then 68 begin 69 ShowMessage('数据库没有连接!'); 70 Exit; 71 end;} 72 ADOQuery:=CreateOleObject('ADODB.Recordset'); 73 ADOQuery.ActiveConnection:=ADOCon; 74 ADOQuery.Open('select * from Test_01',ADOCon,adOpenStatic,adLockOptimistic,adCmdText); 75 SetEditText; 76 end; 77 78 procedure TForm1.SetEditText; 79 begin 80 Edit1.Text:=ADOQuery.Fields['MYID'].Value ; 81 Edit2.Text:=ADOQuery.Fields['MYName'].Value ; 82 end; 83 84 procedure TForm1.Button4Click(Sender: TObject); 85 begin 86 if not CheckQueryActive then 87 Exit; 88 if not ADOQuery.Eof then //这个最后一笔判断不准啊 89 begin 90 ADOQuery.MoveNext; 91 SetEditText; 92 end; 93 end; 94 95 procedure TForm1.Button5Click(Sender: TObject); 96 begin 97 if not CheckQueryActive then 98 Exit; 99 if not ADOQuery.Bof then //这个首笔判断不准啊 100 begin 101 ADOQuery.MovePrevious; 102 SetEditText; 103 end; 104 end; 105 106 function TForm1.CheckQueryActive: Boolean; 107 begin 108 Result:=False; 109 if VarIsEmpty(ADOQuery) then 110 Exit; 111 //if VarIsNull(ADOQuery) then 112 // Exit; 113 Result:=True; 114 end; 115 116 procedure TForm1.Button6Click(Sender: TObject); 117 begin 118 if not CheckQueryActive then 119 Exit; 120 if not ADOQuery.Bof then //这个首笔判断不准啊 121 begin 122 ADOQuery.MoveFirst; 123 SetEditText; 124 end; 125 end; 126 127 procedure TForm1.Button7Click(Sender: TObject); 128 begin 129 if not CheckQueryActive then 130 Exit; 131 if not ADOQuery.Eof then //这个最后一笔判断不准啊 132 begin 133 ADOQuery.MoveLast; 134 SetEditText; 135 end; 136 end; 137 138 end. 139 //ADOQuery.RecordCount 记录数量
-------Unit结束
----Form开始
1 object Form1: TForm1 2 Left = 885 3 Top = 404 4 BorderStyle = bsDialog 5 Caption = 'Form1' 6 ClientHeight = 257 7 ClientWidth = 319 8 Color = clBtnFace 9 Font.Charset = DEFAULT_CHARSET 10 Font.Color = clWindowText 11 Font.Height = -11 12 Font.Name = 'MS Sans Serif' 13 Font.Style = [] 14 OldCreateOrder = False 15 PixelsPerInch = 96 16 TextHeight = 13 17 object Button1: TButton 18 Left = 0 19 Top = 24 20 Width = 137 21 Height = 25 22 Caption = 'Button1_连接数据库' 23 TabOrder = 0 24 OnClick = Button1Click 25 end 26 object Button2: TButton 27 Left = 160 28 Top = 24 29 Width = 153 30 Height = 25 31 Caption = 'Button2_断开连接' 32 TabOrder = 1 33 OnClick = Button2Click 34 end 35 object Edit1: TEdit 36 Left = 24 37 Top = 176 38 Width = 121 39 Height = 21 40 ImeName = '中文(简体) - 搜狗拼音输入法' 41 TabOrder = 2 42 Text = 'Edit1' 43 end 44 object Edit2: TEdit 45 Left = 160 46 Top = 176 47 Width = 121 48 Height = 21 49 ImeName = '中文(简体) - 搜狗拼音输入法' 50 TabOrder = 3 51 Text = 'Edit2' 52 end 53 object Button3: TButton 54 Left = 104 55 Top = 96 56 Width = 121 57 Height = 25 58 Caption = 'Button3_查询数据' 59 TabOrder = 4 60 OnClick = Button3Click 61 end 62 object Button4: TButton 63 Left = 8 64 Top = 128 65 Width = 145 66 Height = 25 67 Caption = 'Button4_下一笔' 68 TabOrder = 5 69 OnClick = Button4Click 70 end 71 object Button5: TButton 72 Left = 168 73 Top = 128 74 Width = 145 75 Height = 25 76 Caption = 'Button5_上一笔' 77 TabOrder = 6 78 OnClick = Button5Click 79 end 80 object Button6: TButton 81 Left = 8 82 Top = 216 83 Width = 145 84 Height = 25 85 Caption = 'Button6_首笔数据' 86 TabOrder = 7 87 OnClick = Button6Click 88 end 89 object Button7: TButton 90 Left = 168 91 Top = 216 92 Width = 145 93 Height = 25 94 Caption = 'Button7_末笔数据' 95 TabOrder = 8 96 OnClick = Button7Click 97 end 98 end
--------Form结束