java 向数据库插入记录
来源:互联网 发布:东华软件新闻 编辑:程序博客网 时间:2024/06/07 11:18
通过Statement
/** * * @author Administrator *接口Statement *所有已知子接口: *CallableStatement, PreparedStatement (一般使用这个) *对象由Connection.createStatement()创建 public class Insert {public static void main(String[] args) {new Insert();}Insert(){try {Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");Connection conn = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;database=student", "sa","123");Statement st = conn.createStatement();st.execute("insert into t_student(id,name,sex,face,courtyard,classs,dorm,tel) values('16','6','6','6','6','6','6','213e')");System.out.println("插入成功");st.close();conn.close();} catch (Exception e) {e.printStackTrace();}}}
通过PreparedStatement
/** * * @author Administrator *PreparedStatement接口 表示预编译的 SQL 语句的对象 *比Statement的好处 *1、相对比较安全,可以防止sql注入 *2、有预编译功能,相同操作批量数据效率较高public class Insert {public static void main(String[] args) {new Insert();}Insert(){try {Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");Connection conn = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;database=student", "sa","123");PreparedStatement pre = conn.prepareStatement("insert into t_student(id,name,sex,face,courtyard,classs,dorm,tel) values(?,?,?,?,?,?,?,?)");pre.setString(1, "lisi");pre.setString(2, "12");//也可以使用setObject方法,避免判断参数的麻烦pre.setObject(3, "32");pre.setObject(4, "32");pre.setObject(5, "32");pre.setObject(6, "32");pre.setObject(7, "32");pre.setObject(8, "32");System.out.println("插入成功");pre.close();conn.close();} catch (Exception e) {e.printStackTrace();}}}
使用Statement插入20000条记录,不使用PreparedStatement因为预处理消耗较大
/** * @author Administrator *批量处理, 一次性插入大量数据 *1 关闭自动提交模式 conn.setAutoCommit(false); *2通过st.addBatch()将给定的 SQL 命令添加到此 Statement 对象的当前命令列表中。 *还要 通过调用方法 executeBatch 批量执行此列表中的命令。 *3 提交 conn.commit(); */public class Insert {public static void main(String[] args) {new Insert();}Insert(){try {Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");Connection conn = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;database=student", "sa","123");Statement st = conn.createStatement();conn.setAutoCommit(false);for (int i=0; i<20000; i++){st.addBatch("insert into t_student(id,name,sex,face,courtyard,classs,dorm,tel) values('"+i+"','姓名','8','9','6','6','6','213e')");System.out.println(i);}st.executeBatch();conn.commit();ResultSet re = st.executeQuery("select * from t_student");while(re.next()){System.out.println(re.getString(1));}System.out.println("插入成功");st.close();conn.close();} catch (Exception e) {e.printStackTrace();}}}
阅读全文
0 0
- java 向数据库插入记录
- VC向数据库中插入一条记录
- 一次向数据库插入多条记录
- Java中向数据库中插入记录并返回该记录的id的值
- JSP向数据库中插入记录并返回记录id
- java向MySQL数据库插入记录时出现中文乱码问题
- Java数据库之插入记录
- Java数据库之插入记录
- 从一个数据库向另一个数据库插入记录
- java向数据库中插入'回车换行'
- java jdbc向数据库插入大量数据
- Java向Oracle数据库插入时间
- 如何向数据库中插入包含单引号的记录
- 通过C#向数据库插入记录是乱码
- sql向数据库中循环插入多条记录
- 使用FileUpload上传文件并向数据库插入一条记录
- 使用jdbc向数据库插入100000条记录
- 关于jsp页面向mysql数据库插入中文记录
- spark DaraFrame 和hive互转
- IE部分兼容及解决之道
- 1008. 数组元素循环右移问题 (20)
- P1433 吃奶酪
- 15 个有用的 JavaScript 和 CSS 库
- java 向数据库插入记录
- map/multimap/set/multiset
- 关于ueditor上传图片后拖动图片自动添加style样式 手机端不能自适应问题
- Zigbee
- File类详解--Java基础083
- 搞定.NET MVC IOC控制反转,依赖注入
- EmberJS快速入门(一)
- 计算机网络.1
- ecmall 获得查询条件的不错的一个函数