数据库操作
数据操作前对数据进行初始化工作,主要是建立数据库,新建表等工作。
新建表字段create database test;
create table user(id int, username varchar(30), passwd varchar(30));
desc user; //查看表结构信息
对数据表插入测试数据
insert into user value(1,"zhang","1111111");
insert into user value(2,"wang","222222");
insert into user value(3,"li","3333333");
插入内容如下:
插入新数据
通过JAVA程序连接数据库,读取数据表时使用Statement接口,通过该接口获取一个结果集ResultSet类型数据获取方式如下:
Statement stat = (Statement) con.createStatement(); //通过con.createStatement创建Statement对象。
ResultSet ret =stat.executeQuery(SQL);
ret获取数据库查询内容,可以通过循环语句输出数据库内容。
详细测试代码如下:
···
package souData;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.stream.Stream;
import org.junit.Test;
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.Statement;
public class rundata {
@Test
public void rundata() throws ClassNotFoundException, SQLException{
DButil dbutil = new DButil(); //实例化数据库连接类
Connection connDB = dbutil.getConnection(); //获取数据库连接对象
System.out.println(connDB);
System.out.println("==========================================");
String SQL = "select id, username, passwd from users";
try{
Statement sat = (Statement) connDB.createStatement();
ResultSet data = sat.executeQuery(SQL) ;
while(data.next()){
int id = data.getInt(1);
String username = data.getNString(2);
String passwd = data.getNString(3);
System.out.println("data:"+id+":"+username+":"+"passwd");
}
}catch(SQLException e){
e.printStackTrace();
}
}
}
···
即可正确输出查询内容
通过参数传递还可以将类、url、user、passwd方式传入连接建立参数。