日期:2014-05-18  浏览次数:20707 次

sql批量插入数据简单问题!!!
现在有2个简单的表, userinfo表和user表 
userinfo表中数据 
id name state  
1 小王 0 
2 小李 0 
3 小武 1 
4 小张 0 
5 李三 1 

user表 字段 userid name 
现在 需要写个存储过程把userinfo表中state=0的数据插入到user表中!! 
例: user表  
userid name 
1 小王  
2 小李  
4 小张  
大家有没什么效率高的办法!!

------解决方案--------------------
Oracle:inert /*+append*/ into user select id,name from userinfo where state = 0
------解决方案--------------------
[b] 
 使用预编译语句更金典。
Statement stmt=null;Connection conn=null; ResultSet rs=null;
PreparedStatement stmt11=null;
 stmt=conn.prepareStatement("select * from userinfo where state like ?");
stmt11.setString(1,"%0%");//查询包含状态为0的
rs=stmt.executeQuery();
[/b]
------解决方案--------------------

insert into user select ui.id ,ui.name from userinfo where ui.state = 0;