这个sql语句怎么写。

tjm1 2002-03-09 08:26:11
UPDATE yaoku_trkd SET yaoKu_trkd.sfypd = :ls_ypd
where yaoku_tpdjl.pcksrq = :ld_rq
and yaoKu_tRKD.KCID = yaoKu_tpdjl.kcid
AND yaoKu_tPDJL.YK = :gi_yk;

编译时提示:

the column prefix 'yaoku_tpdjl' does not match with a table name
or alias name used in the query.

...全文
112 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
tjm1 2002-03-10
  • 打赏
  • 举报
回复
to:keani(基恩),你的信誉值怎么变成89了
keani 2002-03-10
  • 打赏
  • 举报
回复
你也不一定要在同一语句中updata两个表呀,分两次行不行?

还有,游标挺好用的。假如不用游标的话,更麻烦些。
tjm1 2002-03-10
  • 打赏
  • 举报
回复
不用游标行不行
tjm1 2002-03-10
  • 打赏
  • 举报
回复
在update中可以出现两个表吗?
keani 2002-03-10
  • 打赏
  • 举报
回复
UPDATE yaoku_trkd
SET yaoKu_trkd.sfypd = :ls_ypd
WHERE 条件
USING sqlca ;

查找最后一条满足记录,就是用游标了,把找出来的记录的id号赋给一个
变量就可以了。那个变量的值就是最后一个满足条件的记录的id号
zhugejunshi 2002-03-10
  • 打赏
  • 举报
回复
1 你可以把yaoKu_tpdjl.kcid 的值用select into 提出来,然后update.
2 最简单的方法用游标,把找出来的记录的id号赋给一个
变量就可以了。那个变量的值就是最后一个满足条件的记录的id号
dongdongxiao 2002-03-10
  • 打赏
  • 举报
回复
sybase 中update 的格式:
update [[database.]owner.]{table_name | view_name}
set [[[database.]owner.]{table_name.|view_name.}]
column_name1 =
{expression1|NULL|(select_statement)} |
variable_name1 =
{expression1|NULL|(select_statement)}
[, column_name2 =
{expression2|NULL|(select_statement)}]...|
[, variable_name2 =
{expression2|NULL|(select_statement)}]...
[from [[database.]owner.]{view_name [readpast]|
table_name [readpast]
[(index {index_name | table_name }
[ prefetch size ][lru|mru])]}
[,[[database.]owner.]{view_name [readpast]|
table_name [readpast]
[(index {index_name | table_name }
[ prefetch size ][lru|mru])]}]
...]
[where search_conditions]
[plan "abstract plan"]
update [[database.]owner.]{table_name | view_name}
set [[[database.]owner.]{table_name.|view_name.}]
column_name1 =
{expression1|NULL|(select_statement)} |
variable_name1 =
{expression1|NULL|(select_statement)}
[, column_name2 =
{expression2|NULL|(select_statement)}]... |
[, variable_name2 =
{expression2|NULL|(select_statement)}]...
where current of cursor_name

dongdongxiao 2002-03-10
  • 打赏
  • 举报
回复
UPDATE yaoku_trkd SET yaoKu_trkd.sfypd = :ls_ypd
FROM yaoku_trkd ,yaoku_tpdjl
where yaoku_tpdjl.pcksrq = :ld_rq
and yaoKu_trkd.KCID = yaoKu_tpdjl.kcid
AND yaoKu_tPDJL.YK = :gi_yk;
tjm1 2002-03-10
  • 打赏
  • 举报
回复
up
tjm1 2002-03-09
  • 打赏
  • 举报
回复
我是说再程序里用sql语句update
long5 2002-03-09
  • 打赏
  • 举报
回复
Pb中不支持多表同时update,但可以控制它们的更新属新从而使它们都能更新....
tjm1 2002-03-09
  • 打赏
  • 举报
回复
to:panhao,你是指dlast?
panhao 2002-03-09
  • 打赏
  • 举报
回复
我也遇到这样的问题过,SQL Server 7.0 好像对此种写法感冒;PB中就可执行。SQL Server中要写成 jion 的形式,不能用where
tjm1 2002-03-09
  • 打赏
  • 举报
回复
还有,DLast("PDKSSJ", "YaoKu_tPDCF", "YAOKU_TPDCF.YK=" & AA)
这是Access的语法,是查找满足条件的最后一条记录,用pb怎么实现?
tjm1 2002-03-09
  • 打赏
  • 举报
回复
这个update语句关联两个表,pb是否支持?

1,076

社区成员

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

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