maria和mysql数据库操作

  1. 数据库预处理操作基本语句

    增加:

String sql = "insert into 表名 (列1, 列2, 列3, 列4,) values (?,?,?,?)";

PreparedStatement stmt = conn.prepareStatement(sql);

stmt.setString(1, 列1); //其中是setString还是setLong是由列1的数据类型决定的

stmt.setString(2, 列2);

stmt.setString(3, 列3);

stmt.setString(4, 列4);

删除:

String sql = " delete from表名 where 列1=?;

PreparedStatement stmt = conn.prepareStatement(sql);

stmt.setString(1, 列1);

 

修改:

String sql = " update表名 set 列1=? where 列1=?;

PreparedStatement stmt = conn.prepareStatement(sql);

stmt.setString(1, 列1);

stmt.setString(2, 列1);

查询:

String sql = " select * 表名 where 条件1=? and 条件2=?;

PreparedStatement stmt = conn.prepareStatement(sql);

stmt.setString(1, 条件1);

stmt.setString(2, 条件2);

 

  1. 数据库连接

    maria数据库建立连接:

Class.forName("org.mariadb.jdbc.Driver");

Connection conn=DriverManager.getConnection("jdbc:mariadb://localhost:3306/数据库名", "bonly", "123456");

Statement stmt = conn.createStatement();

 

mysql数据库建立连接:

Class.forName("com.mysql.jdbc.Driver");

Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/数据库名", "bonly", "123456");

Statement stmt = conn.createStatement();

 

  1. 获取总行数并关闭

ResultSet rs=stmt.executeQuery(sql);

int totalrows=rs.getRow(); //获取当前行号

rs.last();

int rows=rs.getRow();

out.print(rows); //获取结果集里总行数

while(rs.next()){

 

}

rs.close();

stmt.close();

conn.close();

 

  1. execute\executeQuery\executeUpdate区别

     

    方法executeQuery:这个方法被用来执行select语句,用于产生单个结果集的语句。

    方法executeUpdate:用来执行insert\update或delete语句以及sql ddl (数据定义语言)语句,例如create table 和drop table。insert、update或delete语句的效果是修改表中零行或者多行中的一列或者多列。例如excuteUpdate的返回值是一个整数,只是受影响的行数(即更新计数)。对于create table或drop table等不操作行的语句,excuteUpdate的返回值总为零。

     

    方法execute:用于执行返回多行多个结果集、多个更新计数或者二者的组合语句。因为多数程序员不会需要改高级功能。

    execute方法应该仅在语句能返回多个结果的情况,尽管这种情况很少见。

     

    假定已知某个过程返回两个结果集,则在使用方法execute执行该过程后,必须调用方法getResultSet获得第一个结果集,然后调用适当的getXXX方法获取其中的值。要获得第二个 结果集,需要先调用getMoreResults方法,然后在调用getResultSet方法。如果已知某个过程返回两个更新计数,则首先调用方法getUpdateCound,然后调用getMoreResults,并再次调用getUpdateCount。

     

     

     

     

     

     

posted @ 2017-06-14 16:51  bonly-ge  阅读(721)  评论(0编辑  收藏  举报