看看我的INSERT的SQL语句,错在哪里呢?

eastnet 2003-05-23 12:34:16
我用的是Access2000,Delphi7调试,
TmpTable2 :
Code PieceWork
1 130.00
2 210.00
--------------------------
PayTbl:
PayYear PayMonth Code Name BasePay PiecePay ...
....
2003 4 ........................
2003 5 1 AA 300.00 0
2003 5 2 BB 300.00 0
....
--------------------------
现将TmpTable2的PieceWork插入PayTbl的PiecePay中且条件是PiecePay的Payyerar=2003,PayMonth=5,且两表Code对应,我用这条SQL语句,没有通过:

代码如下:
INSERT INTO PayTbl(PiecePay)
SELECT a.PieceWork FROM TmpTable2 a,PiecePay b
WHERE b.Code=a.Code AND b.PayYear=2003 AND b.PayMonth=5
(大家帮我看看,谢谢啦!)
...全文
36 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
eastnet 2003-05-23
  • 打赏
  • 举报
回复
谢谢各位大虾,散分。
psxfghost 2003-05-23
  • 打赏
  • 举报
回复
^_^,现在才懂你的意思!
可惜被高手抢答了!
唉.........
caiyunxia 2003-05-23
  • 打赏
  • 举报
回复
update PayTbl set PiecePay=PieceWork
from A
WHERE PayTbl .Code=a.Code AND PayTbl .PayYear=2003 AND PayTbl .PayMonth=5
dlkfth 2003-05-23
  • 打赏
  • 举报
回复

SELECT a.PieceWork into #tmp FROM TmpTable2 a,PiecePay b
WHERE b.Code=a.Code AND b.PayYear=2003 AND b.PayMonth=5
你先插入到临时表里,如果成功语句没有错

那就是违反约束
happydreamer 2003-05-23
  • 打赏
  • 举报
回复
update PayTbl
set Piecepay=a.PieceWork
from TmpTable2 a
WHERE PayTbl.Code=a.Code AND PayTbl.PayYear=2003 AND PayTbl.PayMonth=5


psxfghost 2003-05-23
  • 打赏
  • 举报
回复
最好给出出错提示
psxfghost 2003-05-23
  • 打赏
  • 举报
回复
pieceWork和piecePay的字段类型是不是不一致哦??
BBQ 2003-05-23
  • 打赏
  • 举报
回复
小黑可够快!
up支持小黑的答案

Update PayTbl SET PiecePay=a.PieceWork
From TmpTable2 a
Where PayTbl.Code=a.Code AND
PayTbl.PayYear=2003 AND PayTbl.PayMonth=5

34,873

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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