sql在delphi中的问题(这个问题有点特别,不知道你们遇见过没有)

Description of your first forum.

sql在delphi中的问题(这个问题有点特别,不知道你们遇见过没有)

帖子maozhuxi » 星期一, 2004年3月15日 18:14


i=1
query1.sql(i++)
execsql
begin
delphi 代码//与sqlserver无关
end
query1.sql(i++)
问:现在i值是多少

-----------------------
也就是说在sql代码执行的过程中能不能插入执行其他delphi代码而不影响sql代码的连续性?


 
 
 

sql在delphi中的问题(这个问题有点特别,不知道你们遇见过没有)

帖子wolf7525 » 星期一, 2004年3月15日 18:37


如果中间的Delphi代码没有对 i  做任何操作,那么 i 的值是不变的
Delphi中的值传递和对象传递不同,值传递,是保留了两个变量值
而对象传递直接是对象的引用。例如 aObj1:TObject, aObj2:TObject
aObj1:=aObj2
那么aObj1就是aObj2的引用,对aObj1做的任何操作相当于对aObj2的操作
Query1.Sql是Query的属性,只要其他地方没有对Query1.Sql做操作,那么
就不会改变Query1.Sql的值,不信可以测试:
i:=1
query1.sql(i++)
ShowMessage(Query1.Sql.TExt); // 显示此时Sql的值
execsql
begin
delphi 代码//与sqlserver无关
end
ShowMessage(Query1.Sql.Text); // 显示执行后的值
query1.sql(i++)

 
 
 

sql在delphi中的问题(这个问题有点特别,不知道你们遇见过没有)

帖子maozhuxi » 星期一, 2004年4月12日 19:53


接受答案了.