Redian新闻
>
PB SQL语句的简单问题
avatar
PB SQL语句的简单问题# Database - 数据库
f*s
1
在PB 5.0中,
我能不能先把一条SQL语句生成到一个字符串里,
然后执行它?(直接执行的那种,不是通过数据窗口)
有时候,我又想把数据窗口中的一条记录的值直接
插入到SQL语句中去,但是我在语句中引用数据窗
口中的值时,即使在前面加一个冒号,
比如(:dw_1.Object.name[1]),PB也不认,
我怎样才能比较方便地使用那个值?
avatar
t*c
2

certainly you can

【在 f****s 的大作中提到】
: 在PB 5.0中,
: 我能不能先把一条SQL语句生成到一个字符串里,
: 然后执行它?(直接执行的那种,不是通过数据窗口)
: 有时候,我又想把数据窗口中的一条记录的值直接
: 插入到SQL语句中去,但是我在语句中引用数据窗
: 口中的值时,即使在前面加一个冒号,
: 比如(:dw_1.Object.name[1]),PB也不认,
: 我怎样才能比较方便地使用那个值?

avatar
l*u
3

用GETITEMNUM OR GETITEMSTRING 可以吧,然后再用三个'''来拼接

【在 f****s 的大作中提到】
: 在PB 5.0中,
: 我能不能先把一条SQL语句生成到一个字符串里,
: 然后执行它?(直接执行的那种,不是通过数据窗口)
: 有时候,我又想把数据窗口中的一条记录的值直接
: 插入到SQL语句中去,但是我在语句中引用数据窗
: 口中的值时,即使在前面加一个冒号,
: 比如(:dw_1.Object.name[1]),PB也不认,
: 我怎样才能比较方便地使用那个值?

avatar
f*s
4

如果我这样:
string ls_kk
ls_kk = dw_1.object.name[1]
select * from person
where person.name = :ls_kk ;
那是可以的,但我就是想省掉申明变量这一步

【在 l***u 的大作中提到】
:
: 用GETITEMNUM OR GETITEMSTRING 可以吧,然后再用三个'''来拼接

avatar
f*s
5

怎么弄?能告诉我吗?

【在 t**c 的大作中提到】
:
: certainly you can

avatar
l*u
6
Dynamic SQL Format 1 statement

Description
Use this format to execute a SQL statement that does not produce a result set and does not require input parameters. You can use this format to execute all forms of Data Definition Language (DDL).
Syntax
EXECUTE IMMEDIATE SQLStatement {USING TransactionObject} ;
Parameter Description
SQLStatement A string containing a valid SQL statement. The string can be a string constant or a PowerBuilder variable preceded by a colon (such as :my

【在 f****s 的大作中提到】
:
: 怎么弄?能告诉我吗?

avatar
l*u
7

不好意思,刚才贴错了.
string Mysql
Mysql = "CREATE TABLE Employee "&
+"(emp_id integer not null,"&
+"dept_id integer not null, "&
+"emp_fname char(10) not null, "&
+"emp_lname char(20) not null)"
EXECUTE IMMEDIATE :Mysql ;

【在 l***u 的大作中提到】
: Dynamic SQL Format 1 statement
:
: Description
: Use this format to execute a SQL statement that does not produce a result set and does not require input parameters. You can use this format to execute all forms of Data Definition Language (DDL).
: Syntax
: EXECUTE IMMEDIATE SQLStatement {USING TransactionObject} ;
: Parameter Description
: SQLStatement A string containing a valid SQL statement. The string can be a string constant or a PowerBuilder variable preceded by a colon (such as :my

avatar
l*u
8
呵呵...在HELP里用Using dynamic SQL来搜索也可.

【在 l***u 的大作中提到】
:
: 不好意思,刚才贴错了.
: string Mysql
: Mysql = "CREATE TABLE Employee "&
: +"(emp_id integer not null,"&
: +"dept_id integer not null, "&
: +"emp_fname char(10) not null, "&
: +"emp_lname char(20) not null)"
: EXECUTE IMMEDIATE :Mysql ;

avatar
f*s
9

原来如彼,谢谢大富翁阿土

【在 l***u 的大作中提到】
: 呵呵...在HELP里用Using dynamic SQL来搜索也可.
avatar
j*y
10
use this command :
exec "string"
the string is you want to do
ok ?

【在 t**c 的大作中提到】
:
: certainly you can

avatar
l*u
11
呵呵,为您效劳是俺阿土的荣幸...

【在 f****s 的大作中提到】
:
: 原来如彼,谢谢大富翁阿土

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。