在powerbuilder中,如何用SQL语句直接创建数据窗口对象?
在powerbuilder中,不想通过数据窗口对象向导创建数据窗口对象,想直接用sql语句创建数据窗口对象,powerbuilder支持这样做吗,支持的话该如何创建呢,求...
在powerbuilder中,不想通过数据窗口对象向导创建数据窗口对象,想直接用sql语句创建数据窗口对象,powerbuilder支持这样做吗,支持的话该如何创建呢,求高手指点。
展开
5个回答
2015-11-10 · 知道合伙人软件行家
关注
展开全部
SQL语句是不可以直接创建数据库窗口对象的。
数据库窗口对象,它包括了SQL 检索语句、结果显示的样式、检索条件设置等等。
也就是说SQL语句只是数据库窗口的一部份。
而PB中是有函数可以动态生成数据库窗口。
例:SyntaxFromSQL 与create 函数
以下代码为:动态生成数据源为 ”select * from table“的,数据库窗口。
long ll_row
string ls_error
string str_pre
string str_syntax
ls_syntax = "select * from table"
str_pre = "style(type=grid) column(color=0 background.mode=1 "+& "font.face='Tahoma' Font.Family=0 Font.Height=-9 "+&
"Font.pitch=2 Font.charset=134) "+&
"text(color=255) datawindow (color=16777215)"
dw_1.create(sqlca.SyntaxFromSQL (ls_syntax,str_pre,ls_error),ls_error)
if ls_error <> "" then messagebox("",ls_error)
dw_1.settransobject(sql_kf)
dw_1.retrieve()
展开全部
//步骤看起来很复杂,其实可以把他写进一个函数中,以后直接调用就方便很多了
//以下是动态生成dw_1的例子,假设连接事务为sqlca:
string mysql
string syn,err
mysql = "select * from 表"
syn = sqlca.syntaxfromsql( mysql , "style(type=grid)" , err )
if trim(err) = '' then
dw_1.create( syn ,err )
if trim(err) = '' then
dw_1.settransobject( sqlca)
dw_1.retrieve( )
else
messagebox("提示","生成数据源时出错:~r" + err )
return
end if
else
messagebox("提示","生成数据源语法时出错:~r" + err )
return
end if
//以下是动态生成dw_1的例子,假设连接事务为sqlca:
string mysql
string syn,err
mysql = "select * from 表"
syn = sqlca.syntaxfromsql( mysql , "style(type=grid)" , err )
if trim(err) = '' then
dw_1.create( syn ,err )
if trim(err) = '' then
dw_1.settransobject( sqlca)
dw_1.retrieve( )
else
messagebox("提示","生成数据源时出错:~r" + err )
return
end if
else
messagebox("提示","生成数据源语法时出错:~r" + err )
return
end if
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
SQL只有在数据库上才能执行,PB不行。
PB的数据窗口只是打包,把SQL查询出来的数据打包。
你可以试着做一个控件,传入SQL,然后自动生成窗口。原理说穿了和你说的“通过数据窗口对象向导创建数据窗口对象”一个实现方式,只不过外表上看来,好像pb执行了一个sql,创建一个数据窗口。
这就是面向对象编程。
PB的数据窗口只是打包,把SQL查询出来的数据打包。
你可以试着做一个控件,传入SQL,然后自动生成窗口。原理说穿了和你说的“通过数据窗口对象向导创建数据窗口对象”一个实现方式,只不过外表上看来,好像pb执行了一个sql,创建一个数据窗口。
这就是面向对象编程。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
数据窗口下,点sql那个钮,然后再在菜单栏点design -- convert to syntax
编辑即可
编辑即可
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
自动生成
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询