我用java程序向数据库中添加一条记录,提示成功 在数据库中并没有

我用java程序向本地的sql server 2000中添加一条记录,java控制台提示成功图片说明但是用查询分析器select之后并没有这条记录。图片说明把这个sql语句直接输入在查询分析器中就可以显示出来,问一下大神们这是怎么回事
连接用的是jdbc-odbc的方式!

以下是代码

 /*
 * 演示使用jdbc-odbc桥连方式操作数据库luoyedb1(emp,dept)
 * 1.配置数据源
 */
package com.test1;

import java.sql.*;
public class Test1 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Connection ct=null;
        Statement sm=null;
        try{

            // 1.加载驱动(作用是把需要的驱动程序加入内存)
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            // 2.得到连接(指定连接到哪个数据源,用户名和密码)
            //如果配置数据源的时候,选择的是windows NT验证,则不需要输入用户名和密码
            ct=DriverManager.getConnection("jdbc:odbc:mytest","sa","07247857");

            // 3.创建Statement或者preparedStatement
            //Statement主要是发送sql语句 通道
            sm=ct.createStatement();

            // 4.执行(crud,创建数据库,备份。。)

            //添加一条数据dept表
            //executeUpdate可以执行添加删除修改
            int i=sm.executeUpdate("insert into dept values('80','aaa','bbb')");

            if(i==1)
            {
                System.out.println("添加成功!");
            }else{
                System.out.println("添加失败!");
            }
        }catch(Exception e){
            e.printStackTrace();
        }finally{

            //关闭资源!!!
            //关闭顺序是,谁后创建则先关闭
            try {
                //为了程序健壮
                if(sm!=null)
                {
                    sm.close();
                }
                if(ct!=null)
                {
                    ct.close();
                }
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }




    }

}

需要提交事务,你再试试

需要提交事务吧 我也不是很清楚

试一下将dept表刷新一下再查询。

应该是你的事务没有提交,增加提交事务的语句看看。

应该是没有commit。。。

你加一句ct.commit

需要提交事务,然后刷新下

需要提交事务,你再试试

你没有提交! commit

没有手动获取提交方式并且也没有更改提交方式,这里是的executeUpdate() 是自动提交的,应该是在查询是没有刷新造成的,最好是在数据库中刷新后用查询语句查询。

你的程序有try catch,那么输出了什么错误信息没有