请教:怎样使用sql从表中查询并返回值给变量? (50分)

  • 主题发起人 主题发起人 tharold
  • 开始时间 开始时间
T

tharold

Unregistered / Unconfirmed
GUEST, unregistred user!
能否象在PB中一样使用select c1,c2 from table1 into :m_c1,:mc2 where c0='12',
返回值给变量。
多谢。
 
不幸不行
 
没有这种方法
 
String strSQL="select c1,c2 from table1 where c0='12'";

Query1->Close();

Query1->SQL->Clear();
Query1->SQL->Add(strSQL);
Query1->ExecSQL();
Query1->Open();
变量=Query1->FieldByName("c1")->Value;
Query1->Close();
可以吗?
 
在TQuery,open以后
m_c1:=query1.fields[0].value
 
可以用存儲過程,用 out 參數
 
用存儲過程要好一些.:)
 
存储过程:
select @m_c1 = c1 , @m_c2 = c2 from table1 where c0='12'
 
1.在SQL的查询器里执行的话,可这样写:
declare @mc1 int,@mc2 int
select @mc1=c1,@mc2=c2 from table1 where c0='12'
2.在DELPHI中:
var
mc1,mc2:integer;
begin
Query1->Close();
Query1->SQL->Clear();
Query1->SQL->Add('select c1,c2 from table1 where c0='12'');
Query1->Open();
mc1:=Query1.FieldByName('c1').asinteger;
mc2:=Query1.FieldByName('c2').asinteger;
end;



 
谢谢大家!
 
c0是否关键字
 
多人接受答案了。
 
后退
顶部