JDBC向数据库中插入数据
新建数据库,并插入相关数据。
create database bbs; use bbs; create table article
(
id int primary key auto_increment,
pid int,
rootid int,
title varchar(255),
cont text,
pdate datetime,
isleaf int
); insert into article values (null, 0, 1, '蚂蚁大战大象', '蚂蚁大战大象', now(), 1);
insert into article values (null, 1, 1, '大象被打趴下了', '大象被打趴下了',now(), 1);
insert into article values (null, 2, 1, '蚂蚁也不好过','蚂蚁也不好过', now(), 0);
insert into article values (null, 2, 1, '瞎说', '瞎说', now(), 1);
insert into article values (null, 4, 1, '没有瞎说', '没有瞎说', now(), 0);
insert into article values (null, 1, 1, '怎么可能', '怎么可能', now(), 1);
insert into article values (null, 6, 1, '怎么没有可能', '怎么没有可能', now(), 0);
insert into article values (null, 6, 1, '可能性是很大的', '可能性是很大的', now(), 0);
insert into article values (null, 2, 1, '大象进医院了', '大象进医院了', now(), 1);
insert into article values (null, 9, 1, '护士是蚂蚁', '护士是蚂蚁', now(), 0);
为每一张表建立一个实体类,实体类中的属性对应着表的字段名。
package qddx.JDBC;
import java.sql.*;
public class bbsVo { private int id;
private int pid;
private int rootid;
private String title;
private String cont;
private Timestamp pdate;
private int isleaf; public int getId(){
return id;
}
public void setId(int id){
this.id = id;
} public int getPid(){
return pid;
}
public void setPid(int pid){
this.pid = pid;
} public int getRootid(){
return rootid;
}
public void setRootid(int rootid){
this.rootid = rootid;
} public String getTitle(){
return cont;
}
public void setCont(String title){
this.title = title;
} public String getCont(){
return title;
}
public void setTitle(String cont){
this.cont = cont;
}
public Timestamp getPdate(){
return pdate;
}
public void setPdate(Timestamp pdate){
this.pdate = pdate;
} public int getIsleaf(){
return isleaf;
}
public void setIsleaf(int isleaf){
this.isleaf = isleaf;
} }
插入数据
package qddx.JDBC;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.Timestamp;
import java.sql.*;
public class Addbbs { public void add(bbsVo vo){
Connection conn = null;
PreparedStatement pst = null;
ResultSet rs = null;
try{
conn = JDBC_Connection.getConnection();
String sql = "INSERT INTO ARTICLE(id,pid,rootid,title,cont,pdate,isleaf) values(?,?,?,?,?,?,?)";
pst=conn.prepareStatement(sql);
//把相应的参数 添加到pst对象中
pst.setInt( 1, vo.getId());
pst.setInt(2, vo.getPid());
pst.setInt(3, vo.getRootid());
pst.setString(4, vo.getTitle());
pst.setString(5, vo.getCont());
pst.setTimestamp(6, vo.getPdate());
pst.setInt(7, vo.getIsleaf());
//提交pst对象
pst.executeUpdate();
}catch(SQLException e){
e.printStackTrace();
}finally{
JDBC_Connection.free(rs, conn, pst);//关闭数据库连接
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Addbbs addbbs = new Addbbs();
bbsVo vo = new bbsVo();
int id=13;
int pid = 10;
int rootid = 1;
String title = "蚂蚁";
String cont = "蚂蚁";
java.util.Date date = new java.util.Date();
Timestamp pdate = new Timestamp(date.getTime());
int isleaf = 1;
//设置要添加的变量值,放入bbsvo中
vo.setId(id);
vo.setPid(pid);
vo.setRootid(rootid);
vo.setTitle(cont);
vo.setCont(title);
vo.setIsleaf(isleaf);
vo.setPdate(pdate);
addbbs.add(vo);
} }
JDBC向数据库中插入数据的更多相关文章
- 使用JDBC向数据库中插入一条数据
原谅我是初学者,这个方法写的很烂,以后不会改进,谢谢 /** * 通过JDBC向数据库中插入一条数据 1.Statement 用于执行SQL语句的对象 1.1 通过Connection 的 * cre ...
- MySQL_(Java)使用JDBC向数据库中插入(insert)数据
MySQL_(Java)使用JDBC向数据库发起查询请求 传送门 MySQL_(Java)使用JDBC向数据库中插入(insert)数据 传送门 MySQL_(Java)使用JDBC向数据库中删除(d ...
- MyBatis框架的insert节点-向数据库中插入数据
需求:使用mybatis框架中的insert元素节点向数据库中插入数据 UserMapper.xml UserMapper.java 编写测试方法: @Test public void testAdd ...
- 向Oracle数据库中插入数据出错:ORA-01036 无效的变量名或数据
向Oracle数据库中插入数据出错: 经过排查,因为Update数据时没有出错,所以OracleHelper没有问题: 看异常信息提示:无效的变量和数据,应该是SQL语句的问题,调试时所传的实例Use ...
- mysql数据库中插入数据INSERT INTO SET的优势
往mysql数据库中插入数据.以前常用 INSERT INTO 表名 (列名1,列名2…) VALUES(列值1,列值2); 如果在PHP程序中,就会写成如下示例(往商品库里增加商品) $sql = ...
- mongodb数据库中插入数据
mongodb数据库中插入数据 一:connection 访问集合: 在mongodb数据库中,数据是存储在许多数据集合中,可以使用数据库对象的collection方法访问一个集合.该方法使用如下: ...
- 使用JDBC从数据库中查询数据的方法
* ResultSet 结果集:封装了使用JDBC 进行查询的结果 * 1. 调用Statement 对象的 executeQuery(sql) 方法可以得到结果集 * 2. ResultSet 返回 ...
- 以使用QSqlQuery向数据库中插入数据为例,做一个小结
背景: 最近在使用Qt+SQLite写一个本地数据库管理程序(使用者不懂SQL),在写向数据库中插入数据的 相关的函数时,我遇到了几个问题(暂时就这些): 1.向指定字段插入指定数据时,读取到的数据都 ...
- [oracle] 如何使用myBatis在数据库中插入数据并返回主键
在MyBatis中,希望在Oracle中插入数据的同时返回主键值,而非插入的条数. ① oracle使用 selectKey. U_USER_INFO_SEQ 是在数据库中定义好的这张表关联的序列se ...
随机推荐
- Maven 排除第三方jar包所依赖的其他依赖
单依赖过滤:可以过滤一个或者多个,如果过滤多个要写多个<exclusion>. <dependency> <groupId>org.apache.hbase< ...
- 几种排序算法的学习,利用Python和C实现
之前学过的都忘了,也没好好做过总结,现在总结一下. 时间复杂度和空间复杂度的概念: 1.空间复杂度:是程序运行所以需要的额外消耗存储空间,一般的递归算法就要有o(n)的空间复杂度了,简单说就是递归集算 ...
- Text Justification
在一段时间没刷题之后,我发现脑子严重地滞涩了.这题AC花了好大力气,出现了Memory Limit Exceed,Core Dump,以及各种普通的编译.运行错误.MLE 和 CD错误是比较难检查的, ...
- AngularJs的UI组件ui-Bootstrap分享(十三)——Progressbar
进度条控件有两种指令,第一种是uib-progressbar指令,表示单一颜色和进度的一个进度条.第二种是uib-bar和uib-progress指令,表示多种颜色和多个进度组合而成的一个进度条. 这 ...
- Android -- 关闭AsyncTask(异步任务)
前面说了如何操作AsyncTask,这篇我们来说一下如何关闭AsyncTask. 有人就问了:为什么要关闭AsyncTask呢?很简单,AsyncTask 是在后台执行耗时操作(获取数据),当你离开当 ...
- 移动混合开发之HTML5在移动开发中的准则
1.尽量单页面开发 2.慎重选择前端UI框架,新手最好自己动手. 3.动画特效达到60fps 4.长度单位是用rem,即字体的宽度,字体宽度可根据 window.width/number.
- jQuery原生框架-----------------属性操作
// 添加一个处理兼容获取样式的静态方法jQuery.getStyle = function( dom, styleName ) { // dom不是dom,styleName不是字符串,直接打走 i ...
- JSP 甜点
JSP cookies Cookies是存储在客户机的文本文件,它们保存了大量轨迹信息.在servlet技术基础上,JSP显然能够提供对HTTP cookies的支持. 通常有三个步骤来识别回头客: ...
- Java数组和C++异同
一.定义和初始化 1.Jave定义和初始化: Java:两种方式 Type[] A; Type A[]; 定义时不能指定数组的长度 静态初始化: A = new Type[][Ele1,Ele2 ...
- 【转】Thread.isBackground
C#中,Thread类有一个IsBackground 的属性.MSDN上对它的解释是:获取或设置一个值,该值指示某个线程是否为后台线程.个人感觉这样的解释等于没有解释. .Net中的线程,可以分为后台 ...