Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java jdbcsqlserver:Row不';插入后不显示_Java_Sql Server_Jdbc_Insert - Fatal编程技术网

Java jdbcsqlserver:Row不';插入后不显示

Java jdbcsqlserver:Row不';插入后不显示,java,sql-server,jdbc,insert,Java,Sql Server,Jdbc,Insert,我正在尝试使用JDBC驱动程序在SQL Server上插入行 查询在SQL Server上工作,我可以看到行 然而,在我的代码中,我没有得到任何错误,但行没有出现 更奇怪的是,我的自动递增字段是递增的,也就是说,我的自动递增字段的值是3,我运行代码时,什么都没有出现。我在SQLServer上运行查询,新行的值为5 String query = "insert into SSSI_ADMIN.NBSIUSER(UserName,UserDomain) values('test4','dom

我正在尝试使用JDBC驱动程序在SQL Server上插入行

查询在SQL Server上工作,我可以看到行

然而,在我的代码中,我没有得到任何错误,但行没有出现

更奇怪的是,我的自动递增字段是递增的,也就是说,我的自动递增字段的值是3,我运行代码时,什么都没有出现。我在SQLServer上运行查询,新行的值为5

    String query = "insert into SSSI_ADMIN.NBSIUSER(UserName,UserDomain) values('test4','domain4')";
    Statement stmnt = null;

    String driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
    try {
        Class.forName(driver);
        String url = "jdbc:sqlserver://dt112654:1433;databaseName=SIBD;user=u;password=*****";
        Connection conn = DriverManager.getConnection(url);


        conn.setAutoCommit(false);
        stmnt = conn.createStatement();

        stmnt.execute(query);
    } catch (ClassNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (SQLException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } finally {
        if ( stmnt != null)
        {
            stmnt.close();
        }
    }
问候,,
努诺。

您没有提交更改


您必须在
stmnt.execute(查询)之后调用
conn.commit()

您没有提交更改


您必须在
stmnt.execute(查询)之后调用
conn.commit()

因为这是代码“conn.setAutoCommit(false)”;执行此操作的一种方法是“conn.setAutoCommit(true)”或删除此代码“conn.setAutoCommit”;另一种方法是在执行查询后,应添加另一个代码“conn.commit()”

,因为这是代码“conn.setAutoCommit(false)”;一种方法是“conn.setAutoCommit(true)”或删除此代码“conn.setAutoCommit”;另一种方法是在执行查询后,您应该添加另一个代码“conn.commit()”

,或者他可以简单地删除
conn.setAutoCommit(false)@LiuYan刘研 如果需要的话,我们不建议这样做,因为届时将无法回滚。@LiuYan刘研: 对。虽然我考虑使用自动提交一个“黑客”。如果“禁用”事务,事务数据库有什么用处;)哈哈,别嘲笑我,我在事务数据库上做了很多自动提交操作。或者他可以简单地删除
conn.setAutoCommit(false)@LiuYan刘研 如果需要的话,我们不建议这样做,因为届时将无法回滚。@LiuYan刘研: 对。虽然我考虑使用自动提交一个“黑客”。如果“禁用”事务,事务数据库有什么用处;)哈哈,别嘲笑我,我在事务数据库上做了很多自动提交操作。