社区
PowerBuilder
帖子详情
Pb是怎么获得系统的Table & Column参数的
tanye
2001-04-26 01:16:00
在开发系统时,需要获取数据库中的所有Table 和所有 Column信息,
可是PB的系统表中的信息经常不完整,
想从数据库本身的系统表中得到信息,
但是又没有附加的汉字说明信息,(用PowerDesigner建的库),
还有Pb的系统存取过程到底是哪些,他们有什么功能?
我想手工执行Pb的系统存取过程来刷新Pb的系统表得到完整信息,不知可行?
请高手不吝赐教,本人等着急用!!!!
...全文
115
6
打赏
收藏
Pb是怎么获得系统的Table & Column参数的
在开发系统时,需要获取数据库中的所有Table 和所有 Column信息, 可是PB的系统表中的信息经常不完整, 想从数据库本身的系统表中得到信息, 但是又没有附加的汉字说明信息,(用PowerDesigner建的库), 还有Pb的系统存取过程到底是哪些,他们有什么功能? 我想手工执行Pb的系统存取过程来刷新Pb的系统表得到完整信息,不知可行? 请高手不吝赐教,本人等着急用!!!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
tanye
2001-04-27
打赏
举报
回复
在sysobjects / syscolumns中没有汉字信息,在作动态报表生成时无法在表头显示汉字,
在syscolumns中的列类型,长度,小数位怎样获取呢?
等待赐教!!!
wwl007
2001-04-27
打赏
举报
回复
说真的!如果你要想得到表头!我想没有办法!
你可以在powerbuilder里面设计表或者(修改表 alter table)的时候在字段的扩展属性(extend attributes)里面有表头这一项(header)!改成你想要的内容!看看可以吗?
系统表syscolumns里面就有类型、长度、精度这些的!
当然你还可以用下面两个方法
select * from INFORMATION_SCHEMA.columns where table_name='tablename'
exec sp_help tablename
其实方法很多!没有表要自己建的
signboy
2001-04-27
打赏
举报
回复
同意楼上
create table Fieldname
(
TableName varchar(20) not null,
E_FieldName varchar(30) not null,
FieldName varchar(30) not null,
Awen
2001-04-27
打赏
举报
回复
我们在做系统是都是自己做了一个系统表systable
来代替!
为什么你自己不能做一个!
wwl007
2001-04-26
打赏
举报
回复
select * from sysobjects 里面有所有的表
select * from syscolumns里面有所有的列
tanye
2001-04-26
打赏
举报
回复
我用的是SQL Server 7.0
PB
数据窗口source介绍及举例
数据窗口源码介绍 (举例见d_dbit_example.srd,测试数据库为
PB
自带的EAS Demo DB V120) 1.第一行:release 12; 数据窗口所属
PB
的版本号,如果想把高版本的datawindow导入低版本的
PB
中要修改此数字; 2.datawindow()行 通常用修改processing属性,可以把你的数据窗口由grid变成freeform或其它类型 例:freeform:0 grid:1 3.header()行 可以整行复制粘贴,并命名为header[1],header[2],这样可以让数据窗口有多个header 4.
table
()行 这里全是定义的数据属性,是setitem,update,object.data等方法访问的根源 如果存在
table
()里的
column
,数据窗口里可以不存在任何对象,仍然可以访问数据窗口的数据 如果想创建一个空的数据窗口,可以只定义: release 12;
table
() 5.
table
(
column
行) 是第几个
column
,它的ID就是多少,其中也定义了是否可以update时和更新到数据表的字段名 6.
table
(retrieve行) 检索数据时使用的SQL语句,可以通过setsqlselect或modify("
table
.sqlselect")方法去动态修改 修改后要重新定义数据窗口的更新属性 7.
column
()行 id即是对应
table
(
column
行)里的行次,名称(name)可以随便命名,也可以没有,则默认为
table
(
column
行)里的name 8.compute()行 计算列,可以通过表达式计算显示特定值(具体函数可以见共享里的画笔函数). 9.text()行 有时可以代替计算列; 通过定义text的表达式,可以实现一列中显示两个字段值,注意结果必须要转换成string类型(而
column
和compute则不行); 10.html
table
()行 按照格式导出(saveas)html文件,为了保证格式的完整,数据窗口的单位最好设置成pixels GenerateCSS='1' //保持格式及颜色 Border='0' //不要
table
边框 CellSpacing='0' //单元格无间距(此项在界面上经常设置不上) 注: (1)Grid生成<
Table
>标签,Freeform生成
+
标签; (2)生成html
table
时,不知为何会在CSS中的开始自动加一个分号";",导致excel等浏览器打开不能正常显示格式; (3)band为foreground或background的对象导不出来,可以动态修改后再导出. 11.export.xml()行 定义导出xml文件的格式,并为模板保存名称 使用时一定要设置usetemplate值 12.import.xml()行 定义导入xml文件的格式,并为模板保存名称 使用时一定要设置usetemplate值 13.表达式介绍 略 14.其它也略
PB
刷新datawindow当前行的数据
当数据存在主次表时,当更新了次表数据后,主表数据在后台有更变时。可利用刷新主表当前行的方法重显主表数据。 /************************************************************ 函数名称: f_refresh_currentrow(adw) 功 能: 刷新DW当前行数据,不可刷新NO update or 带arguments的DW
参数
说明: adw 目标DW 返 回 值: integer 成功返回1,失败返回-1 作 者: sean 创建时间: 2010年8月18日 ************************************************************/ string ls_dataobject string ls_keys[] //key
Column
Name string ls_dbname[] //key field Name string ls_coltype[] //field style string ls_
table
nm //
table
name string ls_condition //sql Condition long ll_currentrow //Current Row numeric long ll_
column
//
Column
count integer i datawindow ldw datastore ldatastore ldw=adw if ldw.rowcount( )=0 then return -1 elseif trim(ldw.describe( "datawindow.
table
.arguments"))<>'?' then messagebox('','刷新数据窗口当前行失败!,数据窗口需要
参数
',exclamation!) return -1 else ll_currentrow=ldw.getrow( ) FOR ll_
column
= 1 TO long(ldw.object.datawindow.
column
.count)//key names If ldw.Describe("#"+string(ll_
column
)+".key") ='yes' Then i++ ls_keys[i]=ldw.Describe("#"+string(ll_
column
)+".name") ls_dbname[i]=ldw.Describe("#"+string(ll_
column
)+".dbname") ls_coltype[i]=ldw.Describe("#"+string(ll_
column
)+".coltype") End If NEXT if upperbound(ls_keys[])=0 then messagebox('','刷新数据窗口当前行失败!,没有主键',exclamation!) return -1 else ls_
table
nm=left(ls_dbname[1],pos(ls_dbname[1],'.') -1) //
table
name for i=1 to upperbound(ls_keys[]) if pos('numb,deci,long,',LeftA(ls_coltype[i],4) +',')>0 then ls_condition+="and "+ls_dbname[i]+"="+string(f_getitem(ldw,ll_currentrow,ls_keys[i])) else ls_condition+="and "+ls_dbname[i]+"='"+string(f_getitem(ldw,ll_currentrow,ls_keys[i]))+"'" end if next ls_condition=mid(ls_condition,4) //sql Condition ldatastore=create datastore ldatastore.dataobject=ldw.dataobject ldatastore.settransobject( sqlca) if f_addwhere_retrieve(ldatastore,ls_condition)=1 then if ldatastore.rowcount( )=1 then ldw.object.data[ll_currentrow]=ldatastore.object.data[1] ldw.setitemstatus( ll_currentrow, 0, primary!, NotModified!) //if ldw.getrow( )<>ll_currentrow then ldw.scrolltorow( ll_currentrow) end if else messagebox('','刷新数据窗口当前行失败!,条件语法错误',exclamation!) return -1 end if destroy ldatastore end if end if
table
“xxx“ has no
column
named “xxxxx“
今天数据库建表,想加一个列表 提示
table
has no
column
named 遇到这种情况 换个数据库名字重新建表就ok
element
table
创建商品 订单 管理列表
效果图 代码块: <template> <el-
table
:data="
table
Data" stripe row-key="id"> <el-
table
-
column
type="selection" width="55"> </el-
table
-
column
> <el-
table
-
column
label="商品信息"
ALTER
TABLE
ALTER
TABLE
语句用于在已有的表中删除添加或删除列。ALTER
TABLE
table
_name ADD
column
_name datatypeALTER
TABLE
table
_name DROP
COLUMN
column
_name 注释:某些数据库
系统
不允许这种在数据库表中删除列的方式(DROP
COLUMN
column
_name)。 Person: LastName
PowerBuilder
1,077
社区成员
66,438
社区内容
发帖
与我相关
我的任务
PowerBuilder
PowerBuilder 相关问题讨论
复制链接
扫一扫
分享
社区描述
PowerBuilder 相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章