我正在使用 python 2.7 和 cx_Oracle 模块。当我尝试运行以下查询时:
UPDATE bs_cart
SET qty = qty + :moreBooks
WHERE userid = :userID
AND isbn = :bookNumber;
IF SQL%ROWCOUNT = 0 THEN
INSERT INTO bs_cart
(userid,isbn)
VALUES
(:userID,:bookNumber)
使用Cursor.execute()
fromcx_Oracle
我得到以下错误:
DatabaseError: ORA-00911: invalid character
当我把它放在 SQL plus 中时,它说:
SP2-0734: unknown command beginning "IF SQL%ROW..." - rest of line ignored.
UPDATE
如果用户已经在购物车中拥有所选书籍并且INSERT
如果购物车中没有他们想要的书籍的当前副本,我正在尝试制作购物车。
执行方法如下所示:
ds.execute(sql,moreBooks=howMany,userID=userLoggedIn,bookNumber=booksToBuy)
并且每个参数都是用户使用生成的rawinput()
,然后根据正则表达式进行检查。