数据库编程
数据库系统的基本原理
数据库系统组成:
Host:主机,提供Rom存储,有一定带宽,较高的服务器硬件
DBA:数据库管理员
DBMS:数据库管理系统,系统软件,用来定义,管理,操作,存储数据的软件系统,对外提供数据库访问服务,提供tcp对外连接
数据库应用程序:DBMS客户端程序,由API接口连接
db:数据库
Tools:DBMS提供的配套管理工具,可以创建数据库,查看数据库,数据库备份,账户管理等,DBA用来维护数据库系统
数据库系统特点:
数据冗余少,数据正确可靠,具有授权访问控制,提供数据库访问服务。
关系型数据库
定义:按照关系模型来描述和存储客观世界中的实体以及实体间关系的数据库系统,其核心就是RDBMS(关系型数据库管理系统)
关系模型:由行列组成的二维表格,每一行为一条记录,记录的每一项都称为一个字段,同一个表中都有相同的字段结构。
例:
关系模型优点:
易于理解,易于实现,有坚实的理论基础,具有一整套基于范式的设计方法,基于集合的关系运算规则。
常用的关系型数据库管理系统:
Oracle,SQL Server,MySQL
Access:Mocrosoft开发的一种小型数据库管理系统
java DB:Apache Derby软件组织开发的一种小型数据库管理系统
结构化查询语言SQL(基础语法)
database(create, drop)
CREATE DATABASE database_name
DROP DATABASE database_name
table(create, drop)
CREATE TABLE table_name{
field_name1 data_type1(size),
field_name2 data_type2(size),
.....
}
SQL语言中的五大数据类型:
char,varchar:字符型
int,numeric:数值型
bit:逻辑型
date,time:日期型
blob,memo:变长型
DROP TABLE table_name
data(insert, select, update, delete)
插入记录
INSERT INFO table_name VALUES(value1,value2,value3,...)
查询记录
SELECT * FROM table_name
或
SELECT field_name1,field_name2,... FROM table_name
或
SELECT field_name1,field_name2,... FROM table_name
WHERE condition
修改记录
UPDATE table_name
SET field_name1 = value1,field_name2 = value2,...
WHERE condition
删除记录
DELETE FROM table_name
WHERE condition
JDBC数据库编程代码框架
JDBC(java DataBase Connectivity):
关系型数据库连接规范,是一种对外提供数据库访问服务的“请求-响应”规范
每个RDBMS都需要提供一个专门的JDBC驱动程序(driver),用于向数据库应用程序提供JDBC服务接口
JDBC就是一组通用的数据库编程接口API,可以访问不同厂家的RDBMS
模型如下:
JDBC API:
一组基于JDBC规范的数据库类和接口
java.sql包中的DriverManager类和Connection,Statement,ResultSet等接口实现这组API
JDBC编程步骤
1,加载JDBC驱动程序(一个Java类)
常用RDBMS的JDBC驱动类名:
加载驱动(加载class文件):
Class.forName("oracle.jdbc.driver.OracleDriver")
2,连接数据库
JDBC URL:统一资源定位符
常用RDBMS的JDBC URL:
驱动管理类DriverManager(使用其静态方法getConnection()建立连接):
例:
3,提交SQL语句并接收返回结果
(数据库应用程序通过JDBC API向RDBMS提交SQL语句,RDBMS接收SQL语句,并按照SQL语句的指令要求执行数据库操作。提交语句时需先创建一个接口Statement的语句对象,该对象由连接对象的createStatement()方法创建)
修改(update)语句:创建,删除表语句,插入,修改,删除数据语句。
例:
查询(query)语句:select语句
例:
关闭语句对象:
s.close();//关闭语句对象
4,关闭数据库连接
con.close();//关闭数据库连接