JDBC

来源:互联网 发布:行知职校 编辑:程序博客网 时间:2024/06/05 04:26

JDBC:Java Database Connectivity,Java数据库连接,它是一种可执行SQL语句的Java API。
JDBC开发的数据库不仅可以跨平台运行,而且可以跨数据库。
1、建立与数据库的连接
2、执行SQL语句
3、获得SQL语句的执行结果。

数据库系统:
网状型数据库
层次型数据库
关系型数据库
面向对象数据库

SQL语句几种类型:
查询语句:主要select关键字完成。
DML:数据操作语言:主要由insert、update和delete三个关键字完成。
DDL:数据定义语言:主要由create、alter、drop和truncate完成。truncate相当于先删除指定的数据表,再重建该数据表。
DCL:数据控制语言:主要由grant和revoke完成。
事务控制语言:主要由commit、rollback和savepoint完成。
关键字不区分大小写。

SQL命令的标识符:
必须以字母开头;
包括字母、数字和三个特殊字符(# _ $)。
不要使用关键字、保留字,建议多个单词连缀,以_分隔。
同一个模式下的对象不应该同名。

数据库约束
NOT NULL:非空约束,指定某列不能为空。
UNIQUE:唯一约束,制定某列或几列组合不能重复。
PRIMARY KEY:主键,指定该列的值可以唯一指定该条记录。
FOREIGN KEY:外键
CHECK:检查。MYSQL不支持。

JDBC编程步骤
1、加载数据库驱动
Class.forName(driverClass);
2、通过DriverManager获取数据库连接
DriverManager.getConnection(String url,String user,String pass);
三个参数:
数据库URL:jdbc:mysql://hostname:port/databasename (MySQL)
登陆数据库的用户名和密码
3、通过Connection对象创建Statement对象。
三个方法:
createStatement():
prepareStatement(String sql)
prepareCall(String sql)
4、使用Statement执行SQL语句。
execute():可执行任何SQL语句,但比较麻烦
executeUpdate():主要用于执行DML和DDL语句。执行DML语句返回受SQL语句影响的行数,执行DDL语句返回0。
executeQuery():只能执行查询语句,执行后返回代表查询结果的ResultSet对象。
5、操作结果集。
6、回收数据库资源,包括关闭ResultSet、Statement和Connection等资源。

prepareStatement比使用Statement的三个好处:
prepareStatement预编译SQL语句,性能更好。
prepareStatement无须“拼接”SQL语句,编程更简单。
prepareStatement可以防止SQL注入,安全性更好。

原创粉丝点击