2016-12-13 34 views
1

我试图使用Excel在我的数据库更新部分号码清单:使用Excel运行语句多次

UPDATE 
    stock s 
SET 
    s.STC_AUTO_KEY = 2 
WHERE s.WHS_AUTO_KEY = 2 AND 
EXISTS(
    SELECT 
    p.PNM_AUTO_KEY 
    FROM 
    PARTS_MASTER p 
    WHERE 
    s.PNM_AUTO_KEY=p.PNM_AUTO_KEY AND p.PN='102550'); 
UPDATE 
    stock s 
SET 
    s.STC_AUTO_KEY = 2 
WHERE s.WHS_AUTO_KEY = 2 AND EXISTS(
    SELECT 
    p.PNM_AUTO_KEY 
    FROM 
    PARTS_MASTER p 
    WHERE 
    s.PNM_AUTO_KEY=p.PNM_AUTO_KEY AND p.PN='204-060-444-003'); 

的语句运行没有分号,但是当我尝试运行一个以上的在一次使用分号我得到的错误:

SQL Error [911] [22019]: ORA-00911: invalid character

java.sql.SQLSyntaxErrorException: ORA-00911: invalid character

所以......它看起来像我不知道该怎么跑一次运行一个以上的基本语句做。

我使用DBeaver到与Oracle数据库交互。

谢谢你们,对不起,如果这是显而易见的。

+0

我加入了DBeaver标签,因为这很可能是一个前端应用程序的问题,而不管是Excel还是Oracle。 – mathguy

回答

0

尝试增加的每个更新语句如果可能的话之间的空行。您可以使用支持正则表达式的文本编辑器很容易地做到这一点,只需更换“; \ N”与“; \ n \ n”

+0

看起来像添加一个空间没有解决问题。 – StephenP

+0

可能会从Excel中复制一些特殊字符。尝试在编辑器中手动输入其中一个查询,并查看它是否运行。 – odinsride