如何利用ado存取access数据库?能给我把代码发上来吗?谢谢~~
解决方案 »
- 出现盗版?我告他还是不说话?怎么办?
- 为什么insert语句的字段数不能超过9个,超过就报错?
- 如何删除DBChart显示曲线图时的网格线?如何删除DBChart显示曲线图时右边的说明列表?
- 请教exeScaope6.50修改Dephi编写的程序界面
- 在DELPHI7.0中可以同时添加一组按钮吗?如何添加呢?大家帮帮忙,新手求助!!!!!
- 急!急!(100分)
- 怎样用最简单的方法制作帮助!windows风格!
- 怎样在TreeView的指定位置加入一个新的结点??
- 天大的喜讯,看过就行动!
- MIDAS做的程序连接太慢(2分钟),请帮忙
- delphi大富翁怎么不能上了!!!
- ibm笔记本type2600,真奇怪
DataSource-->adotable
adotable-->connectstring单击 ->build->microsoft jet 4.0 ole db-->单击
连接 选中数据库 确定
adotable-->tablename 选中数据库在formshow
中写
if adotable1.active=false then
adotable1.active:=true;
看帮助
:)
对了。为什么我的
adoquery1.fieldbyname('a'):='123';
它说我‘left side can not asign to’呢?
adoquery1.fieldbyname('a')是左值吗?
我看帮助里也是这样写的嘛!是不是我哪里没写全啊?
是不是这样的。
假如你的情况是这样的:
ADOConnection.ConnectionString := 'xxxxxx';
ADOQuery.Connection := ADOConnection;
ADOQuery.SQL :='SELECT * FROM XXX_Table';
===增加的情况===
在Form上放若干TEdit组件,一个TButton:
procedure TForm.ButtonOnClick(Sender : TObject);
begin
with ADOQuery do
begin
if not Active then
Open;
Append;//末尾插入
FieldByName('Field1').Value := Edit1.text;
FieldByName('Field2').AsInteger := StrToInt(Edit2.text);
...........
Post;//提交
end
end;
===修改的情况===
在Form上放一个TDataSource组件,设置其DataSet属性为ADOQuery,若干TDBEdit(不是Edit,当然也可以)组件,设置TDBEdit组件的DataSource属性和DataField属性。再放一个TButton:
procedure TForm.ButtonOnClick(Sender : TObject);
begin
with ADOQuery do
begin
if not Active then
Open;
Post;
end;
end;
===修改的情况===
在Form上放一个TDataSource组件,设置其DataSet属性为ADOQuery,若干TDBEdit(不是Edit,当然也可以)组件,设置TDBEdit组件的DataSource属性和DataField属性。再放一个TButton:
procedure TForm.ButtonOnClick(Sender : TObject);
begin
with ADOQuery do
begin
if not Active then
Open;
Delete;
end;
end;
以上代码比较粗糙,但基本原理就是如此了。记住,后面两个步骤我使用了TDBEdit组件,如果你要使用Edit组件,大致如下:
Edit1.text := ADOQuery.FieldByName('FieldName').Value;
.......
修改需要注意:
ADOQuery.Edit;
ADOQuery.FieldByName('FieldName').Value := Edit1.text;
.......
ADOQuery.Post;
删除没有差别,只是为了获取下一条数据,可以:
ADOQuery.Next;
Edit1.text := ADOQuery.FieldByName('FieldName').Value;
.........