文件管理系统实现了数据在各个应用间的共享,但是文件管理系统管理的基本是分散的、相互独立的数据文件。
不同应用程序的文件管理系统数据格式各不相同,共享比较困难;存在大量冗余。
与数据文件相比,数据库消除了数据冗余,保证了数据完整性、一致性和安全性,实现了数据无关性。
关系型数据库最典型的数据结构是表,由二维表及其之间的联系所组成的一个数据组织
优点:
1、易于维护:都是使用表结构,格式一致;
2、使用方便:SQL语言通用,可用于复杂查询;
3、复杂操作:支持SQL,可用于一个表以及多个表之间非常复杂的查询。
缺点:
1、读写性能比较差,尤其是海量数据的高效率读写;
2、固定的表结构,灵活度稍欠;
3、高并发读写需求,传统关系型数据库来说,硬盘I/O是一个很大的瓶颈。
API 是Application Programming Interface的缩写,百度百科的解释为
API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。——百度百科
其大致意思就是API是一些高级的程序员预先写好的各种函数和类进行了封装,供其他的程序员使用:
C语言 API 以函数的形式呈现,例如
printf()
、scanf()
、fopen()
等。Java API 主要以类的形式呈现,例如 String、Thread、Date 等。
C++ 是在C语言的基础上进行的扩展,所以 C++ API 既包含函数也包含类。
而今天所说的MySQL就为各种编程语言提供了API,也就是为各种编程语言提供了各种封装的类以及方法。
1.SQL语言是一种非过程化语言-命令式语言,将要求交给系统,自动完成全部工作,一次处理的是一个记录集合
2.统一语言,既是自含式语言又是嵌入式语言,
3.它能够独立的用于联机交互的使用方式,用户可以在终端上直接键入SQL命令对数据库进行操作
4.SQL可嵌入许多高级语言开发工具中,供程序员设计程序时使用关系数据库的公共语言
5.目前流行的数据库产品,几乎全部支持SQL语言
6.大多数数据库的存取语言和标准接口使不同的数据库之间有了相互操作的基础
(1)建立数据库的表格
(2)改变数据库系统环境设置。
(3)针对某个数据库或表格,授予用户存取权限
(4)对数据库表格建立索引值
(5)修改数据库表格结构(新建、删除或是修改表格字段)。
(6)对数据库进行数据的新建。
(7)对数据库进行数据的删除。
(8)对数据库进行数据的修改。
(9)对数据库进行数据的查询。
CREATE TABLE <表名> (<列名><数据类型>,……)
CREATE TABLE Student (Sno CHAR(5) NOT NULL UNIQUE, Sname CHAR(20),Ssex CHAR(1),Sage INT, Sdept CHAR(15)); //例子
查询
SELECT [DISTINCT|ALL]<目标列表达式>[,<目标列表达式>……FROM <表名>[, <表名>]……
SELECT * FROM Persons WHERE (FirstName='Thomas' OR FirstName='William') AND LastName='Carter' //例子
WHERE子句:用来确定查询的范围
ORDERED BY :用来指定排序方式
插入
INSERT INTO 表名称 VALUES (值1, 值2,....)
INSERT INTO Student VALUES(‘95020’,’陈冬’,‘男’,’CS’,19) //例子
JDBC是Java Database Connectivity的缩写,是一种用于执行SQL语句的Java
API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。
JDBC的任务
(1) 与一个数据库建立连接
(2) 向数据库发送SQL语句
(3) 处理数据库返回的结果
同时JDBC是一种低级的API
JDBC API所关心的只是Java调用SQL的抽象接口,而不考虑具体使用时采用的是何种方式,具体的数据库调用要靠JDBC Driver
API(JDBC驱动程序接口)来完成,即JDBC API可以与数据库无关,只要提供了JDBC Driver API,就可以JDBC
API访问任意一种数据库,无论它位于本地还是远程服务器。