java+Oracal9i电子申请系统 第5页


Java电子申请系统
  l9.7中如果我们将合同号定义为主关键字(其它数据元素中的记录数据都有可能重名,故不能作为主关键字),故只要知道了一个合同记录的合同号,就可以唯一地在同一行中找到该合同的任何一项具体信息。通常我们称这种关系为函数依赖(functional depEndence)关系。即表中其它数据元素都依赖于主关键字,或称该数据元素唯一地被主关键字所标识。
  第三范式(third normal form,简称 3rd NF)就是指表中的所有数据元素不但要能够唯一地被主关键字所标识,而且它们之间还必须相互独立,不存在其它的函数关系。也就是说对于一个满足了 2nd NF的数据结构来说,表中有可能存在某些数据元素依赖于其它非关键宇数据元素的现象,必须加以消除。
为防止数据库出现更新异常、插入异常、删除异常、数据冗余太大等现象,关系型数据库要尽量按关系规范化要求进行数据库设计。
   2.2 SQL
语言介绍
  2.2.1 SQL基础
  SQL(Structured Query Language,结构查询语言)是一个功能强大的数据库语言。SQL通常使用于数据库的通讯。ANSI(美国国家标准学会)声称,SQL是关系数据库管理系统的标准语言。SQL语句通常用于完成一些数据库的操作任务,比如在数据库中更新数据,或者从数据库中检索数据。使用SQL的常见关系数据库管理系统有:Oracle SybaseDB2Microsoft SQL Server Access Ingres等等。虽然绝大多数的数据库系统使用SQL,但是它们同样有它们自立另外的专有扩展功能用于它们的系统。但是,标准的SQL命令,比如"Select" "Insert" "Update" "Delete" "Create" "Drop"常常被用于完成绝大多数数据库的操作。MS SQL Server 就是用的Transact- SQL
  SQL语言有着非常突出的优点,主要是:
  a. 非过程化语言
  b. 统一的语言
  c. 是所有关系数据库的公共语言
  非过程化语言:SQL是一个非过程化的语言,因为它一次处理一个记录,对数据提供自动导航。SQL允许用户在高层的数据结构上工作,而不对单个记录进行操作,可操作记录集,所有SQL 语句接受集合作为输入,返回集合作为输出。SQL的集合特性允许一条SQL语句的结果作为另一条SQL语句的输入。
SQL
不要求用户指定对数据的存放方法, 这种特性使用户更易集中精力于要得到的结果;所有SQL语句使用查询优化器,它是RDBMS的一部分,由它决定对指定数据存取的最快速度的手段,查询优化器知道存在什么索引,在哪儿使用索引合适,而用户则从不需要知道表是否有索引、有什么类型的索引。
  统一的语言:SQL可用于所有用户的DB活动模型,包括系统管理员、数据库管理员、应用程序员、决策支持系统人员及许多其它类型的终端用户。
  SQL为许多任务提供了命令,其中包括:
  a. 查询数据
  b. 在表中插入、修改和删除记录
  c. 建立、修改和删除数据对象
  d. 控制对数据和数据对象的存取
  e. 保证数据库一致性和完整性
  以前的数据库管理系统为上述各类操作提供单独的语言,而SQL 将全部任务统一在一种语言中。
  所有关系数据库的公共语言:由于所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RDBMS(关系数据库管理系统)转到另一个,所有用SQL编写的程序都是可以移植的。
   2.2.2 SQL
语句
  SQL功能强大,是一种完备的数据处理语言,不仅用于数据库查询,而且用于数据库中的数据修改和更新,概括起来,它可以分成以下几组:
  DMLData Manipulation Language,数据操作语言):用于检索或者修改数据;
  DDLData Definition Language,数据定义语言):用于定义数据的结构,比如 创建、修改或者删除数据库对象;

  DCLData Control Language,数据控制语言):用于定义数据库用户的权限。

  DML组可以细分为以下的几个语句:
  SELECT:用于检索数据;
  INSERT:用于增加数据到数据库;
  UPDATE:用于从数据库中修改现存的数据;
  DELETE:用于从数据库中删除数据。
  DDL语句可以用于创建用户和重建数据库对象。下面是DDL命令:
  CREATE TABLEALTER TABLEDROP TABLECREATE INDEXDROP INDEX
  下面是一个简单SQL语句的例子:

  我们使用SQL语句来从EG_UUSER表中检索USERIDUSERNAME两个字段。
  SELECT USERID,USERNAME FROM EG_UUSER
  2.2.2.1 DDL
DML
  数据定义语言DDL:它是用来创建和修改数据库结构的一种语句,包括 rop 语句。?    数据操作语言DML:包括数据查询与数据更新。数据查询主要是由Select语句完成,这一点不再赘述。而数据更新所造成的风险大大超过数据查询。数据库管理系统必须在更改期内保护所存储的数据的一致性,确保有效的数据进入数据库,数据库必须保持一致性,DBMS还必须协调多用户的并行更新,以确保用户和它们的更改不至于影响其它用户的作业。

  用于修改数据库内容的 SQL 语句主要有以下三个:
  (1) Insert,向一个表中加入新的数据行

  (2) Delete,从一个表中删除数据行

  (3) Update,更改数据库中已经存在的数据

  Insert标准语法:

  
INSERT INTO table_name (col1, col2...) VALUES(value1, value2...)
  下例要将USERID'A00001'作为一个新的用户ID加入EG_UAUTHORITY表中

  INSERT  INTO
  
EG_UAUTHORITY (USERID, USERAUTHORITY)
  
VALUES ('A00001', '1')
  Update语句用于更新单表中选定行的一列或多列的值。要更新的目标表在语句中定义,Set子句则指定要更新哪些列并计算它们的值。Update语句总是包含Where语句,而且Update语句比较危险,所以您必须明确地认识到Where语句的重要性,Where语句被用来指定需要更新的行。

  标准语法:
  UPDATE table_name
  
SET columnname1 = value1
  
[, columname2 = value2]...
  
WHERE search_condition
  Delete 语句标准语法:

  DELETE FROM tablename WHERE condition
  2.2.2.2 复杂操作实现

在信息管理系统中,我们往往会遇到归类、汇总、映射、索引、子查询等复杂操作,相应的支持与实现如下:
  (1) GROUP BY方法
  GROUP BY子句语法为:
  
SELECT column1, SUM(column2)
  
FROM "list-of-tables"
  
GROUP BY "column-list";
  这个GROUP BY子句将集中所有的行在一起,它包含了指定列的数据以及允许合计函数来计算一个或者多个列。

  (2) 组合条件和布尔运算符
  以下的SQL语句中就含有组合条件:
  SELECT column1, SUM(column2)
  
FROM "list-of-tables"
  
WHERE "condition1" AND "condition2";

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]  ... 下一页  >> 

  • 上一篇文章:
  • 下一篇文章:
  • Copyright © 2007-2012 www.chuibin.com 六维论文网 版权所有