Java数据库操作(修改)
String url = "jdbc:mysql://localhost:3306/star"; String user = "root"; String password = "8888"; Connection conn = DriverManager.getConnection(url,user,password);
建立连接
Connection conn
= DriverManager.getConnection(url, user,
password);
关键步骤分析
url格式:
JDBC: 子协议: 子名称//主机名: 端口/数据库名?属性名 = 属性值&…
如
:String url = “jdbc:mysql://localhost:3306/star”;
目
1
录
数据库简介
2
Java连接数据库
3
SQL编程介绍
4
“增删改查”操作
为什么需要数据库?
文件保存数据存在几大缺点
文件的安全性问题 文件不利于查询和对数据的管理 文件不利于存放海量数据 文件在程序中控制不方便
图书馆
数据库的基本特点
实现数据共享
数据共享包含所有用户可以同时存取数据库中的
︳Java程序设计
Java操作数据库技术
余 烨
yeyucvis@
本章学习提示
本章我们主要学习Java语言怎样操作数据库
了解常用的关系型数据库 熟悉JDBC的工作原理,掌握JDBC操作数据库所
用到的类的使用方法
掌握JDBC开发数据库的工作步骤 了解基本的CRUD操作
SQL编程语言
修改数据
UPDATE
tableName SET field=newValue [WHERE
field=value]
tableName表示数据表名称 field表示待修改的字段 value表示原始值,newValue表示新值 []
中的内容表示可选项
例如将info表中的id=1的记录的name值改为”vcc”
Eclipse中的配置
方式二:Window-〉Preferences-〉Java-〉Build Path〉User Library 点击“New”,输入User Library Name,比如:jdbc。 然后点击Add External Jars,包含进所需的驱动 mysql-connector-java-5.1.20-bin.jar 确定后,在前面所建的工程jdbc上右击,在菜单上 选择Build Path->Add Library-> User Library,选择前 面建的jdbc库,确定即可 如果后面再新建其他的工程,同样只需要在此工程 上右击,在Build Path中选择加入前面建的jdbc库。
关系型数据库
一个数据库由一个或多个表组成,每个表由行,列组成,
列代表字段(即属性),行代表记录,表中的记录应该是唯 一的 ,主关键字唯一 操作:搜索(查找)、连接操作、添加、更新、 删除
数据库简介
关系在外观上就是一个表格
在现实世界中一个数据表对应一个实体
实体
人 汽车 飞机 某一栋建筑物 ……
创建第一个Java连接数据库程序
关键步骤分析
注册驱动
Class.forName("com.mysql.jdbc.Driver");
建议采用这种方式,不会对具体的驱动类产生依赖 DriverManager.registerDriver(new com.mysql.jdbc.Driver()); 会造成DriverManager中产生两个一样的驱动,并会对具体的 驱动类产生依赖 System.setProperty(“jdbc.drivers”, “com.mysql.jdbc.Driver”; 虽然不会对具体的驱动类产生依赖,但是注册不太方便,所 以很少使用
目
1
录
数据库简介
2
Java连接数据库
3 4
SQL编程介绍
“增删改查”操作
CRUD操作
在实际的项目开发过程中,60%的时间都是在与数 据库打交道,因此,应该熟练的掌握常用的一些数 据库操作。
SQL编程语言
查询数据
SELECT
field1,field2,… FROM tableName [WHERE
field=value]
field1,field2,field表示字段名称,value表示查询条件值 tableName表示数据表名称 []中的内容表示可选项 例如查询info表中的所有数据
代码的优化 Example01
目
1
录
数据库简介
2
Java连接数据库
3 4
SQL编程介绍
“增删改查”操作
回忆——Java连接数据库步骤1
加载驱动程序
创建Connection
注意:user和password可变,其它都不变
Java连接数据库步骤2
创建Statement
编写SQL语句(CRUD操作) 执行SQL语句
Java连接数据库步骤3
数据库操作完毕后,要释放资源
注意:释放资源的顺序为创建资源顺序的逆序
SQL编程语言
SQL(Structure Query Language)即,结构化查询语言 ,是专门用于用户和应用程序与数据库进行交互的语言
初学者学习SQL一般从数据库的增删改查(CRUD,
Create\Read\Update\Delete)学起
实体的信息就是存储在对应的数据表中
数据库简介
关系(数据表)
属性 元组
关系是一张表,表中的每行(即数据库中的每条记录)就
是一个元组,每列就是一个属性。 在二维表里,元组也 称为记录
以人为例建立数据表
人
姓名、性别、年龄、身高 Name、Sex、Age、Height
表:Person
目前主流的数据库
微软:SQL Server和Access(小型数据库)
SQL
Server易学易用,只能用在Windows上
IBM公司:DB2 和
Informix 和 MySQL
美国Sybase公司:Sybase 美国Oracle公司: Oracle
MySQL开发者为瑞典MySQL
SQL编程语言
从数据表中删除数据
DELETE
FROM tableName [WHERE field=value]
tableName表示数据表名称 WHERE表示条件,field=value表示当字段field的值为
value是才删除记录
[]表示可选项,即可以没有条件限制的删除数据 例如删除info表中的id=1的记录
向数据库中插入数据
INSERT
INTO tableName (field1,field2…) VALUES (value1,value2…) tableName代表数据表名称 Field1,field2代表数据表中字段的名称 value1,value2代表向field1和field2中插入的值 例如向info表中插入数据
JDBC简介
JDBC接口(API)包括两个层次:
面向应用的API:Java API,抽象接口,供应用程序开发人 员使用(连接数据库,执行SQL语句,获得结果) 面向数据库的API:Java Driver API,供开发商开发数据库 驱动程序用
Java Application JDBC API JDBC Manager JDBC Driver API JDBC-Net Driver JDBC-ODBC Bridge Driver JDBC-ODBC Bridge Driver Driver A Driver B
/downloads/ 版本: mysql-connector-java-5.1.20 /downloads/connector/j/
下载MySQL数据库驱动
在Eclipse中导入用于数据驱动的jar包
mysql是子协议,没有子名称,所以“:”后直接是“//”,本机名 localhost,端口3306,数据库star
String
url = “jdbc:mysql:///star“; 表示连接的是本机,并且端 口号为缺省的端口号 user, password可以用“属性名=属性值”的方式告诉数据库 其他参数如:useUnicode = true&characterEncoding = GBK 例
安装MySQL客户端软件(图形化用户界面):SQL-Front_Setup
在MySQL中新建数据库star,里面新建一个表格 employee,包含内容如下:
目
1
录
数据库简介
2
Java连接数据库
3 4
SQL编程介绍
“增删改查”操作
JDBC简介
JDBC(Java Data Base Connectivity, Java数据库连接),由一些接 口和类构成的API,为Java提供的一个平台无关的数据库标准 API,它提供了一个通用的SQL数据库存取机制,该机制为多 数关系型DBMS提供统一接口 JDBC分为JDBC API与JDBC驱动程序。前者即一组JDBC类库 ,使用这个类库可以以一种标准的方法、方便地访问数据库资 源(在java.sql类包中)。JDBC为访问不同的数据库提供了一 种统一的途径,象ODBC一样,JDBC对开发者屏蔽了一些细 节问题。 JDBC的目标是使应用程序开发人员使用JDBC可以连接任何提 供了JDBC驱动程序的数据库系统,这样就使得程序员无需对 特定的数据库系统的特点有过多的了解,从而大大简化和加快 了开发过程。