为什么SQL没有执行?哪有错?(50分)

  • 主题发起人 主题发起人 andy_qin
  • 开始时间 开始时间
A

andy_qin

Unregistered / Unconfirmed
GUEST, unregistred user!
unit Unit1;<br><br>interface<br><br>uses<br>Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,<br>Dialogs, StdCtrls, Grids, DBGrids, DB, ADODB, Activex;<br><br>type<br>TForm1 = class(TForm)<br>ADOQuery1: TADOQuery;<br>DataSource1: TDataSource;<br>DBGrid1: TDBGrid;<br>Button1: TButton;<br>Edit1: TEdit;<br>procedure Button1Click(Sender: TObject);<br>private<br>{ Private declarations }<br>public<br>{ Public declarations }<br>end;<br><br>var<br>Form1: TForm1;<br><br>implementation<br><br>{$R *.dfm}<br><br>function RunSelect: dword; stdcall;<br>var<br>adoquery1:tadoquery;<br>begin<br>CoInitialize(nil);<br>adoquery1:=tadoquery.Create(nil);<br>try<br>adoquery1.close;<br>adoquery1.ConnectionString:='Provider=***';<br>adoquery1.SQL.Clear;<br>adoquery1.SQL.Add('select * from table');<br>adoquery1.open;<br>finally<br>adoquery1.free;<br>CoUninitialize();<br>end;<br><br>end;<br><br>procedure TForm1.Button1Click(Sender: TObject);<br>var<br>thid: dword;<br>begin<br>CreateThread(nil,0,@RunSelect,nil,0,thid);<br>end;<br><br>end.<br><br>没有任何错误信息,SQL没有被执行,SQL同CONNECTSTRING都没有错,<br>直接让adoquery1.active:=true,则可以查询数据。<br><br>
 
RunSelect的作用是什么?<br>adoquery1.free;应该去掉,否则跟没有创建是一样的。<br>
 
给分了!
 
我试过你的东东,<br>Active:= True; Open都Pass啦!!<br>不过你最好把<br>RunSelect函数中的adoquery1.free;删除掉,<br>他都 Free啦,你有什么证据说他没有打开呢????<br>加一句Form1.DataSource1.DataSet:= adoQuery1; //看看数据集<br>运行一次哦,<br>一切都会出来啦~~~~~~~~~<br>呵呵~~~~~~~~~~~~~~~~~~~~~~~~~
 
后退
顶部