我试图使用java在oracle10g数据库上执行一个简单的CREATE查询。这就是我要做的:
Connection conn = //create connection
//open connection. No errors/warnings are generated so I assume this succeeds
Statement statement = conn.createStatement();
ResultSet rs = statement.executeQuery("CREATE TABLE t1 (c1 INTEGER NOT NULL, c2 VARCHAR(100), c3 INTEGER NULL, CONSTRAINT m_pk PRIMARY KEY (c1));");
...
//close connection. No errors again so I assume it succeeds.
当我在命令行上直接执行命令(复制和粘贴到终端窗口)时,它就成功了。当我运行上面的java代码时,我会得到以下错误:
java.sql.SQLSyntaxErrorException: ORA-00911: invalid character
我不明白为什么我会有一个无效的字符,因为复制和粘贴到终端工作非常好。
发布于 2013-04-20 16:19:01
不要紧。我在这里发帖的时候就开枪了!在java中执行查询时,不应该将分号放在语句的末尾。我试着不把分号放在末尾,它运行时没有错误,但我认为我检查了我的数据库,发现没有创建任何表。我现在已经确认掉分号有效了!
https://dba.stackexchange.com/questions/40527
复制相似问题