1.MySQL 的驱动加载
// 1.加载驱动包
try {
Class.forName("com.mysql.cj.jdbc.Driver");
System.out.println("mysql驱动加载成功!");
} catch (ClassNotFoundException e) {
System.out.println("mysql驱动加载失败!");
}
2.Properties类
(1) java读写配置文件的api类连接数据库经常用到配置文件Properties继承于HashTable,能够存取配置文件中的键值对
(2) 使用方法
Properties pps = new Properties();
//从文件流中加载键值对
try {
pps.load(new FileInputStream("database.properties的文件路径"));
} catch (IOException e) {
throw new RuntimeException(e);
}
Enumeration enum1 = pps.propertyNames();
while(enum1.hasMoreElements()) {
String strKey = (String) enum1.nextElement();
String strValue = pps.getProperty(strKey);
System.out.println(strKey + "=" + strValue);
}
(3) 主要方法与描述
主要方法 | 描述 |
---|---|
load(InputStream is) | 从输入流中读取属性列表(键和元素对) |
getProperties(String key) | 用指定的键在此属性列表中搜索属性值 |
store(OutputStream os,String comments) | 将此Properties 表中的属性列表(键和元素对)写入输出流 |
setProperties(String key,String value) | 调用基类的put方法来设置键- 值对 |
clear() | 清除所有装载的键- 值对 |
3.Connection关闭后,ResultSet/Statement都会被关闭
4.ResultSet包含了mysql的执行结果
使用 getXXX 方法检索数据
getInt() 用于检索整型值
getString() 用于检索字符串值
getObject() 用于检索所有类型值 (在不知数据类型的请况下)
5.PreparedStatement
(1) PreparedStatement 接口创建表示预编译的SQL 语句的对象。SQL 语句经过预编译,并存储在 PreparedStatement 对象中。然后,此对象可用来有效地多次执行此语句
(2)要多次执行一个SQL语句,使用PreparedStatement SQL 语句在创建时提供参数在执行 PreparedStatement 时,只传递参数值通过不同的参数值多次调用
String sql = "select * from user_inf where utel = ? and upwd = ?";
PreparedStatement stmt = connect.prepareStatement(sql);
stmt.setString(1,tel);
stmt.setString(2,pwd);
6.分页查询
select * from tablename limit X offset Y
(1)Y:从查询结果集偏移量Y开始显示:y=(要查询的页数-1)* X;其实就是计算出要从第几行开始查询;
(2) X:限制显示的记录数.
7.通过Cmd连接数据库时:mysql -u账号 -p密码
8.创建库:create database 库名;
9.删除指定的数据库:drop database 库名;
10.在创建库时,希望指定编码语法:create database 库名 character set 编码名
11.选中某一个数据库:use 库名;
12.删除指定表语法:drop table 表名;
13.往指定的表中添加数据:insert into 表名(字段1,字段2…) values(值1,值2…)
14.插入数据的第二种语法:insert into 表名 set 字段名1=字段值1,字段名2=字段值2…
15.同时插入多条数据:
INSERT INTO java成绩表
(姓名,班级,Java成绩)
VALUES(‘abc’,‘dt55班’,90.5),(‘def’,‘dt55班’,90.5),(‘ccc’,‘dt55班’,90.5)
16.删除数据语法:delete from 表名 where 条件
17.如果"="是放在set关键字后面,则是“赋值运算符”
18.如果“=”是放在where关键字后,则是“关系运算符”