JDBC技术对数据库的操作

来源:互联网 发布:r语言数据挖掘 薛薇 编辑:程序博客网 时间:2024/05/18 03:31

1.连接数据库

要访问数据库,首先要加载数据库的驱动程序(只需要在第一次访问数据库时加载一次),然后每次访问数据是创建一个Connection对象,接着执行操作数据库的SQL语句,最后在完成数据库操作后销毁前面创建的Connection对象,释放与数据库的连接。
两个步骤:
1.加载驱动程序:
Class.forName(‘com.mysql.jdbc.Driver”);
(ps:需导入mysql_connector_java_5.1.36_bin,jar包)
2.连接数据库:
String driver =”jdbc:mysql://127.0.0.1:3306/test”;
Connection con =DriverManager.getCconnection(driver,”root”,”123456”);

连接数据库的常见错误
1、未导入驱动包
2、URL写错了
3、用户名密码错误
4、驱动包的版本不兼容

一个Demo:
Demo**重点内容**

2.数据库查询

Statement接口将要执行SQL语句交给Connection对象,Connection对象与数据库连接,数据库查询到一个结果后返回一个结果集放在ResultSet接口当中。
创建接口对象:
Statement stmt=con.createStatement();
ResultSet res=stmt.executeQuery(“select * from tb_stu”);

executeQuery:执行SQL res:结果集对象

ResultSet接口常用方法:
ResultSet结果集有一个指针,一开始指在第一行以上(起始)
next() :向下移动指针
first()和last() 指针到第一行和最后一行

getInt(),getDouble(),getString(),getObject():多种返回类型
getString(String 列名),getString(int 第几列):两种重载方式

demo:
demo
这里写图片描述

运行,结果如下:
结果

3.动态查询

**sql注入:**SQL注入攻击指的是通过构建特殊的输入作为参数传入Web应用程序,而这些输入大都是SQL语法里的一些组合,通过执行SQL语句进而执行攻击者所要的操作,其主要原因是程序没有细致地过滤用户输入的数据,致使非法数据侵入系统。
sql注入

为了防止sql注入这种情况发生,运用动态查询

PreparedStatement接口:继承于Statement接口,但是比Statement接口更强大。
String sql=”select * from tb_stu where name =?”
PreparedStatement ps=con.prepareStatement(sql);
“?”:是通配符,可以代替任何字段
PrepareStatement有几个方法:
方法

参数序号即第几个通配符,第二个参数是具体的参数值。

**模糊查询:**SQL语句中提供了like操作符用于模糊查询,可使用“%”来代替0个或多个字符,使用下划线“_”来代替一个字符。
demo:
demo
查询结果如下:
结果

4.添加、修改、删除记录

这里写图片描述
这里写图片描述

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 冰沙床垫结块了怎么办 冰沙床垫融化了怎么办 脚真菌感染肿了怎么办 水雾魔珠被吃了怎么办 怀孕40天出血了怎么办 联璧金融里的钱怎么办 提现的钱不对怎么办 究极日月蛋太多怎么办 人脸识别不匹配怎么办 地下城没有属强怎么办 传奇属性点错了怎么办 龙之谷技能太多怎么办 龙之谷pk卡怎么办 为什么访问别人空间没有记录怎么办 被蚊孑咬了有小红包怎么办 微信建了个打牌群找不客源怎么办 三星手机一直停在开机画面怎么办 微信猜拳被骗了怎么办 组队领金币的码怎么办 cad画图时鼠标飘怎么办 玩迷你世界很卡怎么办 玩迷你世界太卡怎么办 迷你世界太卡了怎么办 把线稿画在背景里了怎么办 蜗牛在家里跑了怎么办 小孩总是跟大人犟嘴怎么办 鹅当宠物养拉屎怎么办 金毛肚子胀很大怎么办 被小白兔咬了怎么办 仓鼠养在家里有味怎么办 被宠物仓鼠咬了怎么办 2个月小狗拉稀怎么办 家有很多小飞虫怎么办 孩子不和父母微信交流怎么办 我孩子和我顶嘴怎么办 我属龙孩子属狗怎么办 宝宝呛奶怎么办伴呼噜 离婚了欠的债务怎么办 小鸟生长发育过程壳破了怎么办 经常嗓子发炎抵抗力低下怎么办 生完孩子出虚汗怎么办