社区
PowerBuilder
帖子详情
pb的select语句表名如何使用变量?
qq308993784
2014-10-15 01:23:02
例如:select * from tablename;
tablename想使用变量而非真正的表名
我使用select * from :变量名
提示错误。
...全文
396
9
打赏
收藏
pb的select语句表名如何使用变量?
例如:select * from tablename; tablename想使用变量而非真正的表名 我使用select * from :变量名 提示错误。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
laoer_2002
2014-10-20
打赏
举报
回复
这个用动态SQL可以实现的,版主说的没错
qq308993784
2014-10-17
打赏
举报
回复
没用过,表名前加冒号为什么就不行呢,select into :变量就行,具体我上面的语句,用动态语句三应该怎么写,能详细些吗?
北京大丸子
2014-10-16
打赏
举报
回复
引用 6 楼 lzp_lrp 的回复:
需要用到动态sql
动态sql的四种用法之三
WorldMobile
2014-10-16
打赏
举报
回复
需要用到动态sql
WorldMobile
2014-10-16
打赏
举报
回复
10.2.3 类型三 这种类型的动态SQL语句的使用频率可能是仅次于第一种类型,它常用来处理参数个数和结果集在编译时已知的情况,又分为游标和存储过程两种情况。使用游标形式的语法与程序中出现的次序为: DECLARE Cursor DYNAMIC CURSOR FOR DynamicStagingArea ; PREPARE DynamicStagingArea FROM SQLStatement{USING TransactionObject} ; OPEN DYNAMIC Cursor{USING ParameterList} ; FETCH Cursor |INTO HostVariableList} ; CLOSE Cursor; 使用存储过程的第三类动态SQL语句的格式和次序与上面的语法形式类似,只是使用EXECUTE语句来代替上面的OPEN语句,其语法格式为: DECLARE Procedure DYNAMIC PROCEDUREFOR DynamicStagingArea ; PREPARE DynamicStagingArea FROM SQLStatement {USING TransactionObject} ; EXECUTE DYNAMIC Procedure{USING ParameterList} ; FETCH ProcedureINTO HostVariableList} ; CLOSE Procedure ; 其中,Cursor和Procedure分别是游标名和过程名;DynamicStagingArea是动态策略区变量,通常使用系统预定义的全局变量SQLSA;SQLStatement是个字符串(常量或变量均可,变量时变量名前面加上冒号(:)),其内容是有效的SQL语句,并使用问号代表参数;ParameterList是对应于SQLStatement中问号的参数列表;HostVariableList是PowerScript主变量(即在其前面加上冒号的PowerScript变量);TransactionObject是事务对象名,缺省时使用SQLCA。 DECLARE语句说明动态游标或动态过程,PREPARE语句准备动态策略区,OPEN或EXECUTE语句打开动态游标或执行动态过程,FETCH语句读取一行数据,如果需要读取多行数据,那么需要反复执行FETCH语句。最后,CLOSE语句关闭动态游标或动态过程。FETCH语句和CLOSE语句的用法与上节介绍的方法相同。下面是第三类动态SQL语句的一个应用示例,它得到籍贯是“北京”的雇员: DECLARE my_cursor DYNAMIC CURSOR FOR SQLSA; Int Emp_id_var String SQLstatement,Emp_state_var = "北京" SQLstatament = "SELECT emp_id FROM employee WHERE emp_state = ?" PREPARE SQLSA FROM :SQLstatement; OPEN DYNAMIC my_cursor using :Emp_state_var; FETCH my_cursor INTO :Emp_id_var; CLOSE my_cursor; 该示例中省略了必要的SQL语句执行状态检查工作,在实际编写程序时,除DECLARE语句外,执行了其他SQL语句后,都应该检查事务对象的SQLCode属性,以判断SQL语句的执行是否成功。 使用这种类型的动态SQL语句可以创建比较通用的向列表框或者下拉列表框中添加数据的脚本。 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// //函数名称wf_AddItem(dropdownlistbox fo_obj,string fs_SQL) //参数:fo_obj为下拉列表框,fs_SQL为SQL语句 //返回值:无 //功能:使用参数指定的SQL语句向指定的下拉列表框中添加数据 //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// String ls_item Declare item_cur Dynamic Cursor For SQLSA; //定义动态光标 Prepare SQLSA From :fs_SQL Using SQLCA; Open Dynamic item_cur; //打开动态光标 Fetch item_cur InTo :ls_item; //取数据 fo_obj.SetRedraw(False) //禁止下拉列表框刷新 Do While SQLCA.SQLcode = 0 fo_obj.AddItem(ls_item) //向下拉列表框中添加项目 Fetch item_cur inTo :ls_item; Loop fo_obj.SetRedraw(True) //刷新下拉列表框 Close item_cur; //关闭动态光标
qq308993784
2014-10-16
打赏
举报
回复
在pb程序中的script 中使用。
qq308993784
2014-10-16
打赏
举报
回复
不需要生成数据窗口,我是要通过输入变量取得不同的表名 我想通过 select filed1 into :i from 变量表名 取得i的值 ,我的表名虽然不同,但结构是一样的。 只是为了取得一个字段的值而已。 在程序是通过变量取得表名,就不需要作不同的判断了。
gzlx
2014-10-15
打赏
举报
回复
要通过 存储过程 动态生成数据窗口才能用动态表名,或通过完整的select语句动态生成数据窗口,生成数据窗口要有具体的字段属性,长度,表名都不清楚是不行的
sjlion
2014-10-15
打赏
举报
回复
你这样做的目的是什么?
Oracle数据库学习指南
Oracle2: 1. 《Oracle8 优化技术》摘录 (第一章 安装) 2. 《Oracle8 优化技术》摘录 (第二章 ...50. 怎样在SQLPlus中
使用
'&' 来实现自定义参数
变量
? 51. 怎样在查询记录时给记录加锁 52. 自动备份Oracle数据库
Powerbuilder9.0实用教程源代码
4.2.1
使用
Quick
Select
选择 数据源 121 4.2.2
使用
SQL选择数据源 122 4.2.3
使用
Query选择数据源 126 4.2.4
使用
External选择数据源 127 4.2.5
使用
Stored Procedure选择数据源 128 4.3 编辑数据窗口 129 ...
使用
AWS轻松构建
PB
级企业BI解决方案
AWS提供了强大的数据分析能力,您可以在无需任何服务器的情况下,构建企业的BI解决方案,分析高达
PB
级别的数据,而成本不到传统方式的十分之一,也无需管理复杂的基础设施。在本次的在线研讨会中,我们将介绍如何
使用
Amazon Redshift 及 Amazon Quicksight 等服务,构建一个可扩展,高性能的数据仓库的解决方案。
计算机基础计算机填空题.doc
数组变 量由
变量
名和数组下标构成,通常用Dim
语句
来定义数组,定义格式为:Dim 数组名([下标下限 to] 下标上限) 缺省情况下,下标下限为0,数组元素从"数组名(0)"至"数组名(下标上限)";如果
使用
to选项,则可以安排...
c++ 面试题 总结
6.下面是C语言中两种if
语句
判断方式。请问哪种写法更好?为什么? int n; if (n == 10) // 第一种判断方式 if (10 == n) // 第二种判断方式 如果少了个=号,编译时就会报错,减少了出错的可能行,可以检测出是否少...
PowerBuilder
1,072
社区成员
66,436
社区内容
发帖
与我相关
我的任务
PowerBuilder
PowerBuilder 相关问题讨论
复制链接
扫一扫
分享
社区描述
PowerBuilder 相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章