java把JTable中的数据插入到数据库问题

请教:如何将JTable中数据插入到数据库中如题我尝试了将JTabele中数据取出来但是不能将数据插入到数据库中请问大家有什么改正办法没有谢谢了一下是部分代码请看看if(... 请教:如何将JTable中数据 插入到数据库中
如题

我尝试了将JTabele中数据取出来 但是不能将数据插入到数据库中
请问大家有什么改正办法没有 谢谢了
一下是部分代码请看看
if (e.getSource() == jButton2) {
int rows = drawfrm.mainTable.getRowCount();
String c1=null,c2=null,c3=null,c4=null,c5=null,c6=null,c7=null,c8=null,c9=null;
for (int i = 1; i < rows; i++) {
c1 = String.valueOf(drawfrm.mainTable.getValueAt(i, 1));
c2 = String.valueOf(drawfrm.mainTable.getValueAt(i, 2));
c3 = String.valueOf(drawfrm.mainTable.getValueAt(i, 3));
c4 = String.valueOf(drawfrm.mainTable.getValueAt(i, 4));
c5 = String.valueOf(drawfrm.mainTable.getValueAt(i, 5));
c6 = String.valueOf(drawfrm.mainTable.getValueAt(i, 6));
c7 = String.valueOf(drawfrm.mainTable.getValueAt(i, 7));
c8 = String.valueOf(drawfrm.mainTable.getValueAt(i, 8));
c9 = String.valueOf(drawfrm.mainTable.getValueAt(i, 9));
}
String url = "jdbc:odbc:driver={MicroSoft Access Driver (*.mdb)};DBQ=D:/error.mdb";//NO-DSN模式
String username = "";
String password = "";
Connection con = null;
String sql = null;
ResultSet rs = null;
Statement stmt = null;
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con = DriverManager.getConnection(url,username,password);
stmt = con.createStatement();
sql="insert into errordata values("+ c1 + ","+ c2 + "," + c3 + ","
+ c4 + ","
+ c5 + ","
+ c6 + ","
+ c7 + ","
+ c8 + ","
+ c9 + ")";
stmt.executeUpdate(sql);
} catch (Exception ex) {
ex.printStackTrace();
}
}

}
数据库显示记录数不为0,
但是插入的数据却都是null,各个记录都是空白
请大家帮帮忙
谢谢了
想知道把JTable里的数据插入到数据库中,这个数据库表的格式是不是跟JTable一样啊?与这个有关系么

大家快帮帮忙吧!!!!!急!!谢谢各位了!!!
展开
 我来答
wangchaojunooo
2012-09-01 · TA获得超过548个赞
知道小有建树答主
回答量:609
采纳率:0%
帮助的人:511万
展开全部
当然有关系了,数据类型必须和数据库定义一样,其实这个不困难的
你在这里
stmt.executeUpdate(sql);

打个断点,然后把SQL的值拷贝出来,放到数据库里直接运行一下,什么时候拷贝出来的SQL直接运行没问题了,那么程序也就没问题了。
这么直接往里插,是不对的,字符串类型的字段要加单引号,数值字段类型可以不加引号
但是从TABLE出来的字符串都是STRING,你需要自己转换成数值型变量
追问
你好,你说的那个
“你在这里
stmt.executeUpdate(sql);

打个断点,然后把SQL的值拷贝出来,放到数据库里直接运行一下,”是什么意思?我的数据库里各字段类型都为string,与table一样
追答
你用的什么开发工具,不会连调试都不会吧,如果不会,还是先学学调试吧,这个是最重要的东东啊,没有它开发寸步难行啊
匿名用户
2012-08-27
展开全部
你打印一下循环中
for (int i = 1; i < rows; i++) {
c1 = String.valueOf(drawfrm.mainTable.getValueAt(i, 1))
.....}

的值,然后看一下,我觉得每次的c1,c2,c3之类的,你最好是都new一下,不然似乎就是不行。。。信息有限,纯臆想,错了勿喷
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式