java连sql 插入用数据用for循环,求大神指导。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java连sql 插入用数据用for循环,求大神指导。相关的知识,希望对你有一定的参考价值。

使用jdbc完成在java文件中添加数据到数据库。步骤操作:
1建立Connection;
2在for循环下,编写insert语句;
3建立preparedStatement;
4给sql赋参数值,并调用ps.execute()执行sql,并做异常处理;
5for循环结束,依次关闭ps,connection资源。
参考技术A 单独插入会吧,在Java循环中写插入语句即可! 参考技术B 罗门莫有我二爸屠哟哟打击普通我妈具体我摸呢某具有想我哦的 参考技术C 开事务,执行insert,完成事务,,,,如果有异常就rollback事务
~~~~~~~~~~~~~~~~~~~~~~~~~~~

用Java连接Oracle ,可以用Java往Oracle写入数据,但是用sql往Oracle插入数据时,关闭了再打开,数据消失

但用Java插入的数据就不会消失,是什么问题呢? (没有财富了)
我的代码是这样的,麻烦各位大神帮忙看一下
try
conn=DriverManager.getConnection(dburl,dbuser,password);
sql=conn.createStatement();
sql.executeUpdate("INSERT INTO teacher values('2009307','张小小','男','ABCD','623371','dfds')");
conn.close();
sql.close();
catch(SQLException e)System.out.print(e);

可以使用 %rowcount 返回受影响的行数
SQL%rowcount --用户成功提取数据的行数
示例:向表中插入一行数据,询问是否插入成功.
declare
iCount int:=0;
begin
insert into place values(2,'beijing');
DBMS_output.put_line('游标所影响的行数:'||SQL%rowcount);
if SQL%NotFount then
DBMS_output.put_line('NotFount为真);
else
DBMS_output.put_line('NofFount为假');
end if;

if SQL%Fount then
DBMS_output.put_line('Fount为真);
else
DBMS_output.put_line('Fount为假');
end if;
if SQL%isopen then
DBMS_output.put_line('isOpen为真);
else
DBMS_output.put_line('isOpen为假');
end if;

isCount:=SQL%rowcount;
DBMS_output.put_line('影响了'||isCount||'行');
end;
参考技术A 你connection的setautocommit是不是设了false

执行完语句之后加上con.commit();

或者sql语句改改

begin

sqlStr ......

commit ;

end ;
参考技术B 估计是你语句最后没有加入commit; 没有提交的缘故吧 参考技术C 就是没用自动提交,也没有手动提交
conn.commit();
sql.close();
conn.close();
改成这样就可以,另,建议先管Statement再关Connection,否则关Statement时候可能会报错
参考技术D 通过编程语言去连接数据库(以java为例),接口有jdbc或hibernate,会自动提交
如果是用jdbc,在weblogic或was中会有缓存池的存在。
而使用hibernate框架,其也自带2级缓存机制。
而sql在使用pl/sql或toad去执行sql后,更新的数据只是会在redo里有记录,正不会真实提交到undo中,只有commit之后提交才可
第5个回答  2010-08-28 用sql往Oracle插入数据时,默认不是提交的,你需要手动提交。
比如执行sql后你需要输入 commit 进行提交
再提一点,你这段代码也太水了
try
conn=DriverManager.getConnection(dburl,dbuser,password);
sql=conn.createStatement();
sql.executeUpdate("INSERT INTO teacher values('2009307','张小小','男','ABCD','623371','dfds')");
conn.close();
sql.close();
catch(SQLException e)System.out.print(e);
1、将关闭语句放到finally里面去
2、关闭顺序应该是先关闭 statement,在关闭conn,先打开的后关,后打开的先关,就跟关门一样。

以上是关于java连sql 插入用数据用for循环,求大神指导。的主要内容,如果未能解决你的问题,请参考以下文章

PHP JSON循环输出数组某个值,求大神解答

如何在SQLserver中利用循环语句插入大量的数据

在matlAB中,用for循环赋值的问题

求大神,c语言怎么用for循环语句输出1到100的所有质数,我这么做结果出来的是2到100的所有数

用poi多次调用write()方法报java.io.IOException: Stream closed。求大神指导。

大神来解答,JAVA中,我想用一个类存放多个数据,为啥报空指针错误?(代码如下)