java 数据库操作

数据库 mysql  ,使用 navicat 建立了 数据库

数据库 表  mysqlweb    

   

数据库的基本信息
        static final String JDBC="com.mysql.jdbc.Driver";
	static final String url="jdbc:mysql://localhost:3306/mysqlweb";//mysqlweb是我接下来要操作的表名称
	static final String user="root";
	static final String pass="19971020jxh";

     新建对象 : Connection conn=null;

                        Statement  stmt=null;

首先是链接数据库

Class.forName("com.mysql.jdbc.Driver");//加载驱动器
conn=DriverManager.getConnection(url, user, pass);//得到链接

数据库查询

1.数据库语句             String sql= "SELECT id,name,sex,pass FROM people";
2.建立链接		stmt=conn.createStatement();//创建并返回Statement对象,Statement对象中有执行语句方法
	     三种执行方法 /* 1.execute(String sql) 返回boolean类型的值,可通过getResultSet()获得查询结果
			 * 
			 * 2.executeUpate(String sql)返回int值,表示受影响的语句
			 * 
			 * 3.executeQuery(String sql)返回结果对象
			 */
3.得到查询结果		ResultSet rs=stmt.executeQuery(sql);//得到查询结果
			//输出结果
4.输出结果			while(rs.next()) {
			   System.out.println(rs.getInt("id")+" "+
					              rs.getString("name")+" "+
					              rs.getString("sex")+" "+
					              rs.getString("pass"));
			}

增添

   得到能执行数据库语句的对象      stmt=conn.createStatement();//得到能执行sql语句的对象
			       //方法一
   要执行的数据库语句	       String sql="insert into people(name,sex,pass) values('刘德华方法一','男','123')";			
		执行           stmt.execute(sql);
			//方法二
		String sql2="insert into people(name,sex,pass) values(?,?,?)";
		PreparedStatement psql;
		   psql=conn.prepareStatement(sql2);
		   psql.setString(1, "刘德华方法二");//第一个问号的值
		   psql.setString(2, "男");
		   psql.setString(3, "123");
		   psql.execute();

删除

                        stmt=conn.createStatement();//得到能操作sql语句的对象
			String sql="delete from people where id=4";//删除id为4的人
			stmt.execute(sql);//使用 executeQuery会报错
修改
                        stmt=conn.createStatement();//得到能操作sql语句的对象
			String sql="Update people set sex='女' where id=1";//id位一的人性别修改
			stmt.execute(sql);//用excuteQuery报错

本次代码:

public class sql { 
static final String JDBC="com.mysql.jdbc.Driver";
static final String url="jdbc:mysql://localhost:3306/mysqlweb";
static final String user="root";
static final String pass="19971020jxh";
static Connection conn=null;//链接
static Statement stmt=null;

static void connection(){//链接数据库
try {
Class.forName("com.mysql.jdbc.Driver");//加载驱动器
conn=DriverManager.getConnection(url, user, pass);
}catch(Exception e) {
System.out.println(e.getMessage());
e.printStackTrace();
}
}
void select() {// 查
try {
String sql= "SELECT id,name,sex,pass FROM people";
stmt=conn.createStatement();//创建并返回Statement对象,Statement对象中有执行语句方法
/* 1.execute(String sql) 返回boolean类型的值,可通过getResultSet()获得查询结果

* 2.executeUpate(String sql)返回int值,表示受影响的语句

* 3.executeQuery(String sql)返回结果对象
*/
ResultSet rs=stmt.executeQuery(sql);//得到查询结果
//输出结果
while(rs.next()) {
  System.out.println(rs.getInt("id")+" "+
             rs.getString("name")+" "+
             rs.getString("sex")+" "+
             rs.getString("pass"));
}

} catch (SQLException e) {
e.printStackTrace();
}
}
void add() {//增
try {
stmt=conn.createStatement();//得到能执行sql语句的对象
//方法一
String sql="insert into people(name,sex,pass) values('刘德华方法一','男','123')";
  stmt.execute(sql);
//方法二
String sql2="insert into people(name,sex,pass) values(?,?,?)";
PreparedStatement psql;
  psql=conn.prepareStatement(sql2);
  psql.setString(1, "刘德华方法二");
  psql.setString(2, "男");
  psql.setString(3, "123");
  psql.execute();
} catch (SQLException e) {
e.printStackTrace();
}
}
void delet() {
try {
stmt=conn.createStatement();//得到能操作sql语句的对象
String sql="delete from people where id=4";
stmt.execute(sql);//使用 executeQuery会报错
} catch (SQLException e) {
e.printStackTrace();
}
}
void revise() {
try {
stmt=conn.createStatement();//得到能操作sql语句的对象
String sql="Update people set sex='女' where id=1";
stmt.execute(sql);//用excuteQuery报错
} catch (SQLException e) {
e.printStackTrace();
}
}
   public static void main(String args[]) {
  sql sql=new sql();
  connection();
 // sql.select();
 // sql.add();
  // sql.delet();
  sql.revise();
   }
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值