怎样通过sql语句查询得到表的字段名?

tabulatings 2001-08-06 04:43:15
1。怎样通过sql语句查询得到表的字段名(字段数目不一定),保存在ls_fields[]中
2。1完成后可以使用如下语句吗?
insert into 表 ( :ls_fields[ n ] )
values (:ls_value);
如果不行的话,应该怎么改?
...全文
253 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
pmwb 2001-08-07
  • 打赏
  • 举报
回复
SELECT * from pbcatcol;
在PB的系统表中pbcatcol存放所有表的字段。
pbsql 2001-08-06
  • 打赏
  • 举报
回复
找系统表,查里面的记录可知
tanye 2001-08-06
  • 打赏
  • 举报
回复
1.利用sql语句生成数据窗口
2.分析数据窗口,获得column信息:名称 类型 长度 ...
3.生成动态sql语句
killerdanny 2001-08-06
  • 打赏
  • 举报
回复
ASA 中 select * from sys.SYSTABLE;
tabulatings 2001-08-06
  • 打赏
  • 举报
回复
是用sql server的
killerdanny 2001-08-06
  • 打赏
  • 举报
回复
sqlserver 中sysobject表中保存所有用户对象,包括表。你自己查查帮助吧!
rjcludy 2001-08-06
  • 打赏
  • 举报
回复
若dbms 是oracle用:

string ls_sql,ls_fields[]
int li_num

declare my_getcolumns dynamic cursor for sqlsa;
li_num = 1
ls_sql = "select COLUMN_NAME from all_tab_columns where owner = vs_owner AND TABLE_NAME = vs_table; "
prepare sqlsa from :ls_sql;
open dynamic my_getcolumns;
if sqlca.sqlcode <> 0 then
messagebox('sdaf','err')
return
end if
fetch my_getcolumns into :ls_fields[li_num];
if sqlca.sqlcode <> 0 then
messagebox('asdf','err')
close my_getcolumns;
end if
do while sqlca.sqlcode <> 100 then
li_num += 1
fetch my_getcolumns into :ls_fields[li_num];
if sqlca.sqlcode = -1 then
messagebox('asdf','err')
close my_getcolumns;
end if
loop
close my_getcolumns;


1,077

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧