第十三章 使用动态SQL(三)
执行SQL语句
有两种使用%SQL.Statement类执行SQL语句的方法:
%Execute(),它执行以前使用%Prepare()或%PrepareClassQuery()准备的SQL语句。%ExecDirect(),它同时准备和执行一条SQL语句。
也可以通过使用$SYSTEM.SQL.Execute()方法执行SQL语句而无需创建对象实例。此方法既准备又执行SQL语句。它创建一个缓存的查询。下面的终端示例显示Execute()方法:
USER>SET topnum=5
USER>SET rset=$SYSTEM.SQL.Execute("SELECT TOP :topnum Name,Age FROM Sample.Person")
USER>DO rset.%Display()
%Execute()
准备查询后,可以通过调用%SQL.Statement类的%Execute()实例方法来执行查询。对于非SELECT语句,%Execute()调用所需的操作(例如执行INSERT)。对于SELECT查询,%Execute()生成一个结果集,用于后续遍历和数据检索。例如:
SET rset = tStatement.%Execute()
%Execute()方法为所有SQL语句设置%SQL.StatementResult类属性%S









