powerbuilder动态sql语句及在组合查询中的应用

powerbuilder动态sql语句及在组合查询中的应用

ID:17954462

大小:41.00 KB

页数:5页

时间:2018-09-11

powerbuilder动态sql语句及在组合查询中的应用_第1页
powerbuilder动态sql语句及在组合查询中的应用_第2页
powerbuilder动态sql语句及在组合查询中的应用_第3页
powerbuilder动态sql语句及在组合查询中的应用_第4页
powerbuilder动态sql语句及在组合查询中的应用_第5页
资源描述:

《powerbuilder动态sql语句及在组合查询中的应用》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、PowerBuilder不仅支持在PowerScript中使用标准嵌入SQL语句,而且支持使用动态SQL语句。动态SQL语句可以解决嵌入SQL语句不支持DDL语句的问题,还能够在运行时构成SQL语句以解决在编译时不知道语句的具体格式或参数的问题。作者在“抚顺机动车辆管理信息系统”的开发过程中,对动态SQL语句的使用有了深刻的体会,车辆信息项目繁多而且组合条件复杂多变,使用该语句,不仅查询速度较高而且使用灵活可靠。下面就各动态SQL语句的使用格式、方法及各自的特点给予简单介绍,然后以查找车辆为例介绍

2、动态SQL语句(格式4)在组合查询中的应用。一、态SQL语句格式PowerBuilder有四种动态SQL格式,每种格式用于处理编译过程中的不同情况。格式1:既没有输入参数,也没有输出结果集格式2:有输入参数,但没有输出结果集格式3:输入参数和结果集的列已知格式4:输入参数和结果集在编译时有一个或都未知1.动态SQL语句格式格式EXECUTEIMMEDIATESQLStatement{USINGTransactionObject};参数描述SQLStatement是包括一条有效SQL语句的字符串。该

3、字符串可以是常量或者冒号后面跟PowerBuilder变量(如:mysql)。该字符串必须只包括在一行上,且不能包含表达式。TransactionObject(可选项)数据库的事务对象名执行这种格式的SQL语句没有结果集、也不需要输入参数。这种格式可用来执行所有形式的数据定义语言(DDL)。以下是一段建立车辆临时视图的例子:stringsqlsql=“CREATEVIEWtemp_vehicleASSELECTcode,masterFROMvehicle”EXECUTEIMMEDIATE:sqlU

4、SINGSQLDA;2.动态SQL语句格式格式PREPAREDynamicStagingAreaFROMSQLStatement{USINGTransactionObject};EXECUTEDynamicStagingAreaUSING{ParameterList};参数描述DynamicStagingAreaDynamicStagingArea变量名(通常为SQLSA)SQLStatement包含一条有效SQL语句的字符串。该字符串可以是常量或者冒号后面跟PowerBuilder变量(如:my

5、sql)。在该语句中每个参数键入问号(?)。TransactionObject(可选项)定义数据库的事务对象名ParameterList(可选项)用冒号分隔的PowerScript变量列表以下是一段使用格式2的脚本:intid=156//车辆IDStringmaster//车主SetNull(master)//设成NULL值PREPARESQLSAFROM"INSERTINTOvehicleVALUES(?,?)";EXECUTESQLSAUSING:id,:master;用这种SQL语句格式执行

6、没有结果集、但需要输入参数。可用来执行所有形式的数据库定义语言(DDL)。3.动态SQL语句格式格式DECLARECursor

7、ProcedureDYNAMICCURSOR

8、PROCEDUREFORDynamicStagingArea;PREPAREDynamicStagingAreaFROMSQLStatement{USINGTransactionObject};OPENDYNAMICCursor{USINGParameterList};EXECUTEDYNAMICProcedure{USING

9、ParameterList};FETCHCursor

10、ProcedureINTOHostVariableList;CLOSECursor

11、Procedure;参数描述CursororProcedurecursor或procedure名DynamicStagingAreaDynamicStagingArea变量名(通常为SQLSA)。SQLStatement一条有效SQLSELECT语句的字符串。该字符串可以是常量或变量。TransactionObject(可选项)定义数据库的事务对象名Parame

12、terList(可选项)用豆号分隔的PowerScript变量列表HostVariableList把数据值提取到PowerScript变量的列表以下是一段使用格式3的脚本:DECLAREmy_cursorDYNAMICCURSORFORSQLSA;//声明动态游标integerVehicle_id//查找的车辆IDstringMark="BMW"//厂牌是”BMW”stringsqlstatementsqlstatement="SELECTidFROMvehicle"+"WHERE

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。