PB FOR IDENTITY

zycsoftware123456789 2003-11-14 11:32:12
我在SQL2000中建了一数据库,其中有一字段是递增的,字段名(id),请问在PB数据窗口中执行insertrow命令的同时如何得到当前字段id递增的值.我在PB的Rows菜单的update propertics也设置了,用getitemnumber命令取得是空.望解答,谢谢!
...全文
91 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
lmby 2003-11-16
  • 打赏
  • 举报
回复
long l_row,l_id
l_row = dw_1.insertrow(0)
dw_1.update()
dw_1.ScrollToRow(l_row)
dw_1.AcceptText()
l_id = dw_1.getitemnumber(l_row,"id")

你这样的代码执行后应该还有问题啊,你什么时候输入内容呢。看下dw_1.update()返回值是不是1。
qqjj7758 2003-11-15
  • 打赏
  • 举报
回复
是在录入吗
可不可以说 录入时更新它所对应的表 表里的IDENTITY row就可以显示出来 可以取了
或者说要取其中的数据 直接 用 dw_1.getite{string,...}(dw_1.getrow(),column)

  • 打赏
  • 举报
回复
long l_row,l_id
l_row = dw_1.insertrow(0)
dw_1.update()
dw_1.ScrollToRow(l_row)
dw_1.AcceptText()
l_id = dw_1.getitemnumber(l_row,"id")

但我执行以上语句后l_id还是空,请帮我改正,谢谢!
mittee 2003-11-15
  • 打赏
  • 举报
回复
字段是递增的,这是由数据库管理的,你可以不用管它
ropriest 2003-11-15
  • 打赏
  • 举报
回复
同意,Identity是在Insert保存时才自动增加的。
1、可以保存后再GetItemNumber
2、如果记录是连续的,单行增加可以考虑用select count(*)+1 来计算当前新增行的id值。
insert2003 2003-11-15
  • 打赏
  • 举报
回复
就是保存后
UPDATE
getitemnumber取插入行的id值
取出来的就是你想要的
insert2003 2003-11-15
  • 打赏
  • 举报
回复
先保存
然后再取你插入行的ID值
getitemnumber取出来的就是你想要的
lmby 2003-11-15
  • 打赏
  • 举报
回复
你的是identity字段,在insert时该列不会去取值,只在保存时才会去取递增值。所以你用getitemnumber去取是null.

1,088

社区成员

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

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