在实现好的窗口实现 添加修改删除查询数据的方法
以如下数据实验
statement自带的函数使用 | 说明 |
---|---|
execute (SQL) | 执行给定的SQL语句返回一个或多个结果结果集 execute方法应该仅在语句能返回多个ResultSet对象、多个更新计数或ResultSet对象与更新计数的组合时使用。当执行某个已存储过程 或动态执行未知 SQL 字符串(即应用程序程序员在编译时未知)时,有可能出现多个结果的情况 |
executeUpdate(SQL) | 执行给定的SQL语句 返回一个结果集 resultset, 用于执行 执行update,insert,delete语句 ,它返回的是语句执行后说影响到的记录条数(int) |
executeQuery(SQL) | 主要用于执行select语句,返回一个resultset对象 |
定义几个对象
Connection con;
Statement st;
ResultSet res=null;
Connect ct=new Connect();
先在类里面定义好用法直接调用传入参数即可
这里是把 execute executeUpdate executeQuery 封装起来用
//执行创建数据表、插入数据等操作
public void execute(String sql) {
st = null; res = null;
try {
st = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
//这里参数固定格式,想了解的话自行百度
st.execute(sql);
}catch(SQLException e) {
System.err.println(e.getMessage());
}
}
//执行数据查询的方法 执行select 语句 返回值resultset结果集
public ResultSet executeQuery(String sql) throws Exception{
Open();
st = null; res = null;
try {
st = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
res = st.executeQuery(sql); //核心是调用
}catch(SQLException e) {
System.err.println("查询数据:"+e.getMessage());
}
return res;
}
//更新数据库操作方法 可以执行insert update delete 返回结果为影响数据库的行数
public void executeUpdate(String sql) {
st = null; res = null;
try {
st = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
st.executeUpdate(sql);
con.setAutoCommit(false);
con.commit();//提交
}catch(SQLException e) {
System.err.println("更新数据"+e.getMessage());
}
}
数据的增删改查
思路:①连接数据库②实现SQL语句 ③调用上面的方法函数,
添加数据
//添加数据
public void tianjia(String id,String name,String score) {
try {
ct.Open();
String sql = "insert into student(id,name,score) values(" +id+",'"+name+"',"+score+")";
ct.executeUpdate(sql);
//new Connect().close();
}catch(Exception e) {
System.err.println(e.getMessage());
}
}
点击添加如图所示数据,在更新数据库页面或者点击系统管理的刷新
修改数据
//更新数据
public void xiugai(String id ,String name,String score){ //在文本框里获取到是String类型
try {
ct.Open(); //必须先连接数据库
//mysql 语句使用的时候需要注意的是 字符类型的参数怎么写 ???
// updata student set name='name',score=score where id=id 这是原本的语句varchar 需要加 ‘’
String sql = "update student set name =" +" '"+ name +"' "+ ",score = " + score + " where id = " +Integer.parseInt(id);
ct.executeUpdate(sql);
//new Connect().close();
}catch(Exception e) {
System.err.println(e.getMessage());
}
}
输入如下数据点击修改:
删除数据
输入学号(这里是按学号删除)之后点击删除按钮
//删除数据 获取按学号唯一删除
public void shanchu(String id){
try{
ct.Open();
String sql = "delete from student where id="+Integer.parseInt(id);
ct.executeUpdate(sql);
//new Connect().close();
}catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
System.err.println(e.getMessage());
}
}
查数据
输入学号点击查询
public ResultSet chazhao(String id){
try {
//这里查找的内容可以随便改
res=null;
String SQL="select * from student where id="+id;
res=ct.executeQuery(SQL);
//ct.close();
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
return res;
}
点击这里查看实现完整管理界面
还有按栏目排名功能哟~~