对于想了解Delphi数据库查询的读者,本文将是一篇不可错过的文章,我们将详细介绍TADOQuery,并且为您提供关于Delphi/ADO:哪些组件?TADODataSet和TADOCommand还是
对于想了解Delphi 数据库查询的读者,本文将是一篇不可错过的文章,我们将详细介绍TADOQuery,并且为您提供关于Delphi / ADO:哪些组件? TADODataSet和TADOCommand还是TADOQuery?、Delphi ADOQuery、delphi ADOQuery '尚未调用 CoInitialize、delphi adoquery 判断字段是否存在的有价值信息。
本文目录一览:- Delphi 数据库查询(TADOQuery)(delphi 数据库查询 教程)
- Delphi / ADO:哪些组件? TADODataSet和TADOCommand还是TADOQuery?
- Delphi ADOQuery
- delphi ADOQuery '尚未调用 CoInitialize
- delphi adoquery 判断字段是否存在
Delphi 数据库查询(TADOQuery)(delphi 数据库查询 教程)
总结
以上是小编为你收集整理的Delphi 数据库查询(TADOQuery)全部内容。
如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。
Delphi / ADO:哪些组件? TADODataSet和TADOCommand还是TADOQuery?
The preferred approach with ADO
components is to use TADODataSet and
TADOCommand. TADOQuery (and TADOTable
and TADOStoredProc) are provided for
compatibility.Use TADODataSet for sql that returns
result-sets and TADOCommand for sql
that does not.
我是一个无知的n00b – 谁将编写很多ADO的东西.以上陈述是否正确?
P.s是否有任何良好的开源Windows程序,让我可视化和探索我的数据库的内容?
我应该使用哪些组件来处理/不返回结果?
解决方法
Delphi ADOQuery
Delphi ADOQuery
procedure TForm1.Button1Click(Sender: TObject); var A: Array of String;//定义动态数组 Index: Integer;//定义数组下标变量 ADOQuery:TADOQuery; begin ADOQuery:=TADOQuery.create; ADOQuery.sql.Clear; ADOQuery.sql.Add(‘Select B from A‘); ADOQuery.Open; Setlength(A,ADOQuery.RecordCount); //设置数组宽度 Index := 0;//初始化下标 ADOQuery.First; While Not ADOQuery.Eof Do //数据集循环 begin A[Index] := ADOQuery.FieldByName(‘B‘).asstring;//数据添加到数组中 Inc(Index); ADOQuery.Next; end; end;
Delphi ADOQuery连接数据库的查询、插入、删除、修改
//查询记录 procedure TForm1.Button1Click(Sender: TObject); begin ADOQuery.Close; ADOQuery.sql.Clear; ADOQuery.sql.Add(‘select * from YourTABLE where 查询条件‘); ADOQuery.Open; //插入记录 procedure TForm1.Button2Click(Sender: TObject); begin ADOQuery.Close; ADOQuery.sql.Clear; ADOQuery.sql.Text:=‘insert into YourTABLE(字段1,字段2) values(:字段1,:字段2)‘; // ADOQuery.sql.Add(‘insert into YourTABLE values(:字段1)‘); ADOQuery.Parameters.ParamByName(‘字段1‘).Value:=trim(Edit1.Text); ADOQuery.Parameters.ParamByName(‘字段2‘).Value:=trim(Edit2.Text); ADOQuery.Execsql; end; //删除记录 procedure TForm1.Button3Click(Sender: TObject); begin ADOQuery.Close; ADOQuery.sql.Clear; ADOQuery.sql.Text:=‘Delete from YourTABLE where 字段3=:字段3‘; //这里没有添加where的条件判断,实际使用时,注意添加判断 // ADOQuery.sql.Add(‘Delete from NEW_TABLE where 字段3=:字段3‘); ADOQuery.Parameters.ParamByName(‘字段3‘).Value:=trim(Edit3.Text); ADOQuery.Execsql; //删除记录也可用DeleteRecords()函数 procedure DeleteRecords(AffectRecords: TAffectRecords = arall); 这个函数有一个参数:AffectRecords可以取如下的值: 1、arCurrent :删除当前记录 2、arFiltered :删除符合Filter过滤后的所有记录(如果你使用Filter过滤的话) 3、arall :删除所有记录 4、arallChapters :Delete affects all chapters(ADO chapters) //修改记录 procedure TForm1.Button4Click(Sender: TObject); begin ADOQuery.Close; ADOQuery.sql.Clear; ADOQuery.sql.Text:=‘Update YourTABLE SET 字段4=:字段4‘; //这里没有添加where的条件判断,实际使用时,注意添加判断 // ADOQuery.sql.Add(‘Update YourTABLE SET 字段4=:字段4‘); ADOQuery.Parameters.ParamByName(‘字段4‘).Value:=trim(Edit4.Text); ADOQuery.Execsql; //即时更新插入、删除、修改后的记录 在上面插入、删除、修改的语句后添加如下代码即可: ADOQuery.Close; ADOQuery.sql.Add(‘select * from YourTABLE where 查询条件‘); ADOQuery.Open; //使用ADOQuery时注意: 1、如果你需要更改数据,query.requestlive必须为true 2、如果有输入参数的时候,容易出错,通常的错法是这样: 比如:“WHERE abc = : abc” 改正如下:“WHERE abc=:abc”就是说=:前后都不能留空格。 3、ADOQuery.Open与ADOQuery.Execsql 有不同之处。 ADOQuery.Open一般用在查询,select时候;而ADOQuery.Execsql用在insert,delete,update等。
Delphi中使用ADO连接带密码的Access
Delphi中使用ADO连接带密码的Access var gDBConn:string; try self.ADOConnection1.Close; //无密码连接方式 Password=""; //gDBConn:=‘Provider=Microsoft.Jet.OLEDB.4.0;Password="";Data Source=MyDB.mdb;Persist Security Info=True‘; //有密码连接方式 Jet OLEDB:Database Password=delphi7; gDBConn:=‘Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password=123456;Data Source=‘+ExtractFilePath(application.ExeName)+‘MyDB.mdb;Persist Security Info=True‘; self.ADOConnection1.ConnectionString := gDBConn; self.ADOConnection1.Open; except //raise; self.ADOConnection1.Close; self.ADOConnection1.Free; application.MessageBox(‘不能连接到数据库!‘,‘提示信息‘,64); application.Terminate; end;