gpt4 book ai didi

java - 我无法将记录插入到在 oracle 数据库中创建的表中。我犯了什么错误?

转载 作者:行者123 更新时间:2023-12-01 18:47:07 26 4
gpt4 key购买 nike

    import java.sql.*;
import sun.jdbc.odbc.JdbcOdbcDriver;
class Jdbc1
{
public static void main(String[] args) throws Exception
{
JdbcOdbcDriver jd=new JdbcOdbcDriver();
DriverManager.registerDriver(jd);
Connection con=DriverManager.getConnection("jdbc:odbc:sai123","SYSTEM","sai123");
Statement st=con.createStatement();
int res=st.executeUpdate("insert into A1 values('1','tomato','10')");
System.out.println(res+"record is inserted..");
st.close();
con.close();
}
}

我已将表创建为:

CREATE TABLE A1(
INO INTEGER NOT NULL,
INAME CHAR(30) NOT NULL,
IPRICE INTEGER NOT NULL
);

当我编译并运行 java prog 时,它显示“已插入 1 条记录..”,但是当我在 SQLdeveloper 中打开表时,我在表中找不到任何更新。它们都是空的!我还设置了 ojdbc-6.jar 的类路径。我在这里犯了什么错误?还有其他我应该复制和粘贴的文件吗?我只是一个初学者,所以请帮助。我的 Editplus 中的程序如何将更新直接引导到 SQL 创建的表中。它遵循什么路径?

最佳答案

Oracle 默认情况下将自动提交设置为 false。从 Oracle Sql Developer(或代码)将 autocommit 设置为 true 或从代码提交更改:

//before con.close()
con.commit();

或者如果您想设置为自动提交:

//after creating Connection
conn.setAutoCommit(true);

关于java - 我无法将记录插入到在 oracle 数据库中创建的表中。我犯了什么错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17298001/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com