本文目录一览

1,数据库的基础知识都有那些

呵呵,这是比较泛的问题。1.数据库的架构2.数据库的作用3.数据库(DDL,DML,DCL ) 、事务,锁,过程,触发器,函数等。4.数据库规划,布局,表空间,容器,表,视图,索引,字段,数据类型等。5.日志工作原理,备份与恢复原理及操作。

数据库的基础知识都有那些

2,数据库系统原理

1不满足,因为有非主属性(C)部分依赖于码2 关系模式R2的码是B#,满足2范式,因为所有非主属性完全函数依赖于码,但有传递依赖3 R1(A#, B#, E) R2(B#, C) R3(C→D)4 如果是1:M的,通常设计关系模式时是将M端的实体在转换成关系模式时增加1端的主键作为外键,同时增加联系中的属性,而1端的实体自己创建成一个关系模式。另一中方式就是联系自身创建一个关系模式,取联系两端的实体主键联合作为这个关系模式主键,在加上联系自身的属性。不过我觉得要问的是前一种方法。

数据库系统原理

3,数据库三级模式的工作原理

数据库的三级模式是数据库在三个级别 (层次)上的抽象,使用户能够逻辑地、抽象地处理数据而不必关心数据在计算机中的物理表示和存储。实际上 ,对于一个数据库系统而言一有物理级数据库是客观存在的,它是进行数据库操作的基础,概念级数据库中不过是物理数据库的一种逻辑的、抽象的描述(即模式),用户级数据库则是用户与数据库的接口,它是概念级数据库的一个子集(外模式)。用户应用程序根据外模式进行数据操作,通过外模式一模式映射,定义和建立某个外模式与模式间的对应关系,将外模式与模式联系起来,当模式发生改变时,只要改变其映射,就可以使外模式保持不变,对应的应用程序也可保持不变;另一方面,通过模式一内模式映射,定义建立数据的逻辑结构(模式)与存储结构(内模式)间的对应关系,当数据的存储结构发生变化时,只需改变模式一内模式映射,就能保持模式不变,因此应用程序也可以保持不变。
1模式. 模式又称概念模式或逻辑模式,对应于概念级。它是由数据库设计者综合所有用户的数据,按照统一的观点构造的全局逻辑结构,是对数据库中全部数据的逻辑结构和特征的总体描述,是所有用户的公共数据视图(全局视图)。它是由数据库管理系统提供的数据模式描述语言(data description language,ddl)来描述、定义的,体现、反映了数据库系统的整体观。 2.外模式 外模式又称子模式,对应于用户级。它是某个或某几个用户所看到的数据库的数据视图,是与某一应用有关的数据的逻辑表示。外模式是从模式导出的一个子集,包含模式中允许特定用户使用的那部分数据。用户可以通过外模式描述语言来描述、定义对应于用户的数据记录(外模式),也可以利用数据操纵语言(data manipulation lang uage,dml)对这些数据记录进行。外模式反映了数据库的用户观。 3.内模式 内模式又称存储模式,对应于物理级,它是数据库中全体数据的内部表示或底层描述,是数据库最低一级的逻辑描述,它描述了数据在存储介质上的存储方式翱物理结构,对应着实际存储在外存储介质上的数据库。内模式由内模式描述语言来描述、定义,它是数据库的存储观。 在一个数据库系统中,只有唯一的数据库, 因而作为定义 、描述数据库存储结构的内模式和定义、描述数据库逻辑结构的模式,也是惟一的,但建立在数据库系统之上的应用则是非常广泛、多样的,所以对应的外模式不是惟一的,也不可能是惟一的。

数据库三级模式的工作原理

4,数据库原理

开始的时候你可以针对某一种数据库学习,比如Sql Server 、Oracle、MySql,因为这些数据库虽说有不同之处,但是大同小异,只要对一种数据库了解了,其他的数据库也就没什么问题了。相同之处:1、SQL(标准化查询语言),这个是所有数据库都通用的,只要学会了这个语言,你就可以游走在所有数据库系统之间,屡试不爽!2、原理,目前主流数据库都是关系型数据库,就如同面向对象程序设计语言一样,虽说C#和java是两款不同的语言,但是都是面向对象语言,只要是面向对象语言,所有程序无非就是对象和对象之间的关系和调用的过程集合而已。关系型数据库也是同理。了解了一种关系型数据库的原理之后,其他的也是无师自通。不同之处:1、方言,方言就通现实生活中不同地区的方言是一样的。不同数据库之间会有他们自己方言,像函数,不同数据库有自己的不同的函数,虽说功能一样,但是写法不同。如果你在实际中用到了其他的数据库就要学习他的函数,原理和大的思路上都是一样的。所以方言其实一种不统一而带来的产物,慢慢的应该会消减去掉!2、细节方面的差异。推荐一本好书。Oracle是非常强大的数据库系统,大型的服务器上都是运行的Oracle或是DB2,所以学习Oracle是非常主流的。而且Oracle的参考资料非常的多。用户多。所以学习Oracle很必要。推荐《《ORACLE 9i/10g入门与实践》。9i和10g是两个不同的版本,是两本书。
数据库原理这个问题很大,一句半句讲不清楚。 简单说一下,数据库有好多种,每种数据库的结果是不一样的。 往细了说,数据库放在硬盘上,存储的状态也是二进制代码,只是读取,写入有特定的格式而已。 主要内容包括:数据库系统的组成、关系数据库、数据库设计以及数据保护等,同时讲解一种重要的数据库系统的应用。要求学生通过本课程的学习了解有关数据库系统的基本概念,掌握相关的知识,初步掌握数据库设计方法,并能用数据库系统建立数据库及简单的应用。 修读专业:本大纲适合本科电子信息工程专业使用 先修课程:《数据结构》 教材:数据库系统及应用(第二版) “北京市高等教育精品教材”立项项目。由崔巍编著,高等教育出版社 一、 课程的性质与任务 本课程是电子信息工程专业有关数据库的一门统设必修课。主要任务是介绍数据库组织、管理和使用的一般知识,包括数据模型、数据库结构、数据库系统、数据库设计、关系运算、关系规范化、关系查询(sql语言)等方面的知识;介绍至少一种实际的数据库管理系统的构成与使用。目的使学生通过该课程的学习,具有进行简单数据库应用系统设计与开发的能力。 二、 课程的基本要求 1.熟练掌握(代码:a):数据库中的概念、数据库设计与编程方法。数据库的结构与特点,数据库系统的组成及各部分的功能,熟练使用结构化查询语言(sql)。 2.掌握(代码:b):关系代数语言的使用;关系演算语言的使用;三级一致性的区别及其与可串行化调度的关系;关系数据库以及面向对象数据库的特点与区别;查询表达式优化的方法。 3.了解(代码:c):关系、关系模型、键码、视图、函数依赖等概念 三、 修读专业 本大纲适合本科电子信息工程专业使用 四、 本课程与其它课程的联系 由于数据库理论及应用是各种计算机技术的综合应用,为了能够让学生很好地理解数据库技术,要求学生在学习本课程之前最好已经学习过以下课程:《程序设计》、《数据结构》、《操作系统》等课程。当然主要要求学生具有“数据结构”的基本知识,其他课程的知识要求是其次的。 对于现行数据库的选择,建议教师最好选择“microsoft sql server”,其它的数据库如:oracle,ibm db2相对比较难理解和应用,access又过于简单。

5,JDBC的工作原理是什么

JDBC是Sun公司制定的一个可以用Java语言连接数据库的技术。JDBC工作原理主要分3个步骤:1、加载数据库驱动。2、获取数据库连接。3、发送sql语句访问数据库 。1、加载数据驱动:使用Class.forName方法,调用这个方法会加载数据库驱动com.MySQL.jdbc.driver。 关于数据库驱动的理解,其实是sun公司给了一个Driver的接口,然后各个数据厂商根据自己的数据库 来实现这个接口。当要访问数据库的时候,需要引入这个第三方类库。类的加载主要分为5个部分, 加载、验证、准备、解析、初始化。在初始化的部分用到了DriverManager.registerDriver()方法,将 自己注册给DriverManager的Driver接口。这个地方体现了多态。这个时候就可以使用Driver了。 2、获取数据库连接DriverManager.getConnection()。这个方法主要调用driver的connect()方法 返回一个实现了Connection接口的对象。 3、然后利用Connection对象创建Statement,发送sql语句访问数据库。延伸:JDBC基础知识 JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序,并且可跨平台运行,并且不受数据库供应商的限制。1、跨平台运行:这是继承了Java语言的“一次编译,到处运行”的特点;2、不受数据库供应商的限制:巧妙在于JDBC设有两种接口,一个是面向应用程序层,其作用是使得开发人员通过SQL调用数据库和处理结果,而不需要考虑数据库的提供商;另一个是驱动程序层,处理与具体驱动程序的交互,JDBC驱动程序可以利用JDBC API创建Java程序和数据源之间的桥梁。应用程序只需要编写一次,便可以移到各种驱动程序上运行。Sun提供了一个驱动管理器,数据库供应商——如MySQL、Oracle,提供的驱动程序满足驱动管理器的要求就可以被识别,就可以正常工作。所以JDBC不受数据库供应商的限制。JDBC API可以作为连接Java应用程序与各种关系数据库的纽带,在带来方便的同时也有负面影响,以下是JDBC的优、缺点。优点如下:· 操作便捷:JDBC使得开发人员不需要再使用复杂的驱动器调用命令和函数;· 可移植性强:JDBC支持不同的关系数据库,所以可以使同一个应用程序支持多个数据库的访问,只要加载相应的驱动程序即可;· 通用性好:JDBC-ODBC桥接驱动器将JDBC函数换成ODBC;· 面向对象:可以将常用的JDBC数据库连接封装成一个类,在使用的时候直接调用即可。缺点如下:· 访问数据记录的速度受到一定程度的影响;· 更改数据源困难:JDBC可支持多种数据库,各种数据库之间的操作必有不同,这就给更改数据源带来了很大的麻烦
简单描述把,就是建立一个类似于queue这样的集合对象,接着创建一定数量的connection对象,下一步就是将这个connection对象存入到queue,有应用需要调用的时候就从queue中拿出一个,当应用用完以后,调用close方法,池就会将连接放回到queue中。这样程序在运行的过程中就无需多次建立数据库连接了,可以提高系统执行效率。
Class.forName( "com.microsoft.sqlserver.jdbc.SQLServerDriver "); 执行后,ClassLoader加载SQLServerDriver到JVM中,并加载此类的static段 根据JDBC规范,在此static段中必须调用DriverManager.registerDriver注册自己 DriverManager.getConnection时,DriverManager会遍历所有已经注册的Driver 逐个调用其中的Driver.acceptsURL方法 如果此Driver接受此URL,则调用Driver.connect方法返回一个Connection连接 Driver属于什么类型是不能直接从代码上看出来,具体要看Driver的实现方式
JDBC程序描述为包含如下过程的应用:1. 引入一个必要的类2. 加载JDBC驱动程序3. 标识数据源(URL、Username、Password)4. 分配一个Connection对象5. 分配一个Statement对象6. 使用该Statement对象执行检查 SQL语句7. 从返回的ResultSet对象中检索数据 类似于迭代器的操作8. 关闭ResultSet对象9. 关闭Statement对象10. 关闭Connection对象装载驱动程序通过JDBC来连接关系数据库,应用程序必须采取的第一个合理步骤是加载合适的JDBC驱动程序,并获得一个与该数据库的连接。使用JDBC的DriverManager类可以实现。DriverManager类实现了java.sql.Driver接口。加载Driver接口并把它注册给DriverManager类有两种方法:(1) 使用Class.forName()方法(2) 标识jdbc.drivers系统属性内的Driver类建立连接实现Connection接口的一个类对象(即一个Connection对象)代表一个与某个具体数据源的连接。Connection对象实际上是建立一个上下文环境,以便程序员能在它里面创建并执行SQl命令。Connection databaseConnection = DriverManager.getConnection(sourceURL);语句与结果集Statement接口提供了执行SQL语句和检索结构的一种方法。由于Statement是一个接口,所以程序员不能直接创建一个Statement对象。通常创建这个对象的方法是:Statement statement = connection.createStatement();当建成一个Statement对象之后,它提供一个工作空间供用户创建SQL查询,执行该查询,以及检索返回的任何结果。当建成一个Statement对象之后,就可以通过调用该Statement对象的下列执行方法来执行SQL查询executeQuery()――用于在单个ResultSet对象的数据库中检索出数据的SQL语句。executeUpdate()――执行不返回ResultSet对象的查询。它的返回值是一个整数(称为更新计数),它给出受到影响的行数。execute()――执行返回多个结果集,多个更新计数值或这两者组合的语句。
JDBC的工作原理:1.这里以连接Mysql数据库为例:驱动程序为:com.mysql.jdbc.Driver连接字符串(url)为:jdbc:mysql://localhost:3306/test1.加载连接数据库的驱动程序:Class.forName("com.mysql.jdbc.Driver");2.创建与数据源的连接:String url = "jdbc:mysql://localhost:3306/test";Connection con = DriverManager.getConnection(url,"user","passwd");3.查询数据库:创建Statement对象并执行SQL语句以返回一个ResultSet对象Statement stmt = con.createStatement();ResultSet rs = stmt.executeQuery("select * from DBTableName");4.获取当前记录集中的某一记录的各个字段的值:String name = rs.getString("name");int age = rs.getInt("age");float wage = rs.getFloat("wage");5.关闭结果集,关闭查询语句,断开与数据库的连接:rs.close();stmt.close();con.close();
最权威的请参考Sun公司的官方说明:http://java.sun.com/products/jdbc/overview.html

文章TAG:数据  数据库  哪些  工作  数据库有哪些工作原理  
下一篇