- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PowerBuilder不仅支持在PowerScript中使用标准嵌入SQL语句,而且支持使用动态SQL语句。动态SQL语句可以解决嵌入SQL语句不支持DDL语句的问题,还能够在运行时构成SQL语句以解决在编译时不知道语句的具体格式或参数的问题。作者在“抚顺机动车辆管理信息系统”的开发过程中,对动态SQL语句的使用有了深刻的体会,车辆信息项目繁多而且组合条件复杂多变,使用该语句,不仅查询速度较高而且使用灵活可靠。下面就各动态SQL语句的使用格式、方法及各自的特点给予简单介绍,然后以查找车辆为例介绍动态SQL语句(格式4)在组合查询中的应用。
一、态SQL语句格式
PowerBuilder 有四种动态SQL格式,每种格式用于处理编译过程中的不同情况。
格式1:既没有输入参数,也没有输出结果集
格式2:有输入参数,但没有输出结果集
格式3:输入参数和结果集的列已知
格式4:输入参数和结果集在编译时有一个或都未知
1.动态SQL语句格式
格式
EXECUTE IMMEDIATE SQLStatement {USING TransactionObject} ;
参数描述
SQLStatement 是包括一条有效SQL语句的字符串。该字符串可以是常量或者冒号后面跟PowerBuilder变量(如:mysql)。该字符串必须只包括在一行上,且不能包含表达式。
TransactionObject(可选项)数据库的事务对象名
执行这种格式的SQL语句没有结果集、也不需要输入参数。这种格式可用来执行所有形式的数据定义语言(DDL)。
以下是一段建立车辆临时视图的例子:
string sql
sql=“CREATE VIEW temp_vehicle AS SELECT code , master FROM vehicle ”
EXECUTE IMMEDIATE :sql USING SQLDA;
2. 动态SQL语句格式
格式
PREPARE DynamicStagingArea FROM SQLStatement {USING TransactionObject} ;
EXECUTE DynamicStagingArea USING {ParameterList} ;
参数描述
DynamicStagingArea DynamicStagingArea变量名(通常为SQLSA)
SQLStatement包含一条有效SQL语句的字符串。该字符串可以是常量或者冒号后面跟 PowerBuilder 变量(如:mysql)。在该语句中每个参数键入问号(?)。
TransactionObject(可选项)定义数据库的事务对象名
ParameterList (可选项)用冒号分隔的PowerScript变量列表
以下是一段使用格式2的脚本:
int id = 156 //车辆ID
String master //车主
SetNull(master) // 设成NULL值
PREPARE SQLSA
FROM INSERT INTO vehicle VALUES (?,?) ;
EXECUTE SQLSA USING :id, :master ;
用这种SQL语句格式执行没有结果集、但需要输入参数。可用来执行所有形式的数据库定义语言(DDL)。
3. 动态SQL语句格式
格式
DECLARE Cursor | Procedure DYNAMIC CURSOR | PROCEDURE FOR DynamicStagingArea ;
PREPARE DynamicStagingArea FROM SQLStatement {USING TransactionObject} ;
OPEN DYNAMIC Cursor {USING ParameterList} ;
EXECUTE DYNAMIC Procedure {USING ParameterList} ;
FETCH Cursor | Procedure INTO HostVariableList ;
CLOSE Cursor | Procedure ;
参数描述
Cursor or Procedure cursor或procedure名
DynamicStagingArea DynamicStagingArea变量名(通常为SQLSA)。
SQLStatement 一条有效SQL SELECT语句的字符串。该字符串可以是常量或变量。
TransactionObject (可选项)定义数据库的事务对象名
ParameterList (可选项)用豆号分隔的PowerScript变量列表
Host
您可能关注的文档
- 第三章 11.汽车总线路.ppt
- 企业费用管理数据库设计幻灯片.doc
- 数据库加锁操作_副本.doc
- 第五章 Ant帮助文档.docx
- 使用 SqlDataSource 控件选择数据教材.docx
- ROM和RAM的区别.doc
- 我国电子商务面临的问题及应采取的对策.doc
- 液晶显示器的主要性能指标与参数-试题.doc
- 应用程序和驱动程序通信的源码.doc
- VB第6讲课后练习答案.doc
- 2025-2026学年小学美术五年级下册浙美版(2024)教学设计合集.docx
- 2025年广西钦州港鹰岭至石化产业园铁路融资投资立项项目可行性研究报告(非.docx
- 2025年锂电池正极材料回收技术未来方向报告.docx
- 快与慢的创业故事创业思维测试及案例.docx
- 2025年新能源汽车充电桩审计报告.docx
- 2025年金炙垣(上海)石油化工有限公司介绍企业发展分析报告.docx
- 2025年炉尾气治理6MW兰炭尾气发电项目可行性实施报告.docx
- 2025年大数据分析行业人才流动趋势及分析报告.docx
- 2025年5.3测试卷好用吗.doc
- 2026年中国碳化硅旋流器市场运营态势研究报告.docx
最近下载
- Bose博士SoundTouch 300 Soundbar 扬声器说明书.pdf
- 17J008 挡土墙(重力式、衡重式、悬臂式)(最新).pdf VIP
- 具身智能的基础知识(68页 PPT).pptx
- 贵州医科大学2024-2025学年第2学期《生物化学》期末考试试卷(B卷)附参考答案.docx
- 仪表桥架及保护管安装培训2(2021-03).pptx VIP
- 电气控制及PLC技术期末试卷.docx
- 贵州医科大学2024-2025学年第2学期《生物化学》期末考试试卷(A卷)附参考答案.docx
- 电气安装工艺培训 全套课件.ppt
- 临床吞咽障碍患者经口饮食规范化指导.pptx
- 涂料行业清洁生产审核报告.doc VIP
原创力文档


文档评论(0)