09 2013 档案

摘要:约束(constraint)就是管理如何插入或处理数据库数据的规则。DBMS通过在数据库表上施加约束来实施引用完整性。1.1 主键主键是一种特殊的约束,用来保证一列(或一组列)中的值是唯一的,而且永不改动。列应用于主键的条件:任意两行的主键值都不相同。每行都具有一个主键值(即列中不允许NULL值)。包含主键值的列从不修改或更新。主键值... 阅读全文
posted @ 2013-09-28 21:36 gyzhao 阅读(985) 评论(0) 推荐(2) 编辑
摘要:游标(cursor)是一个存储在DBMS服务器上的数据库查询,它不是一条SELECT语句,而是被该语句检索出来的结果集。在存储了游标之后,应用程序可以根据需要滚动或浏览其中的数据。使用游标使用游标的步骤:在使用游标前,必须声明(定义)它。这个过程实际上没有检索数据,它只是定义要使用的SELECT语句和游标选项。一旦声明,就必须打开游标以供使用... 阅读全文
posted @ 2013-09-28 21:29 gyzhao 阅读(683) 评论(0) 推荐(1) 编辑
摘要: 由于工作的原因,我们开发的产品都是基于英文的,而且开发工具,包括操作系统也都是英文的,在打开一些基于中文编码的软件的时候经常会出现乱码的情况。其实只要打开控制面板按照下面的步骤稍微设置一下,就可以完美的在英文操作系统下支持中文软件了... 阅读全文
posted @ 2013-09-27 12:00 gyzhao 阅读(1629) 评论(0) 推荐(0) 编辑
摘要:事务处理是一种机制,用来管理必须成批执行的SQL操作,保证数据库不包含不完整的操作结果。利用事务处理,可以保证一组操作不会中途停止,它们要 么完全执行,要么完全不执行(除非明确指示)。如果没有错误发生,整组语句提交给(写到)数据库表;如果发生错误,则进行回退(撤销),将数据库恢复到某 个已知且安全的状态。1. 事务处理使用事务处理(transaction processing),通过确保成批的SQL操作要么完全执行,要么完全不执行,来维护数据库的完整性... 阅读全文
posted @ 2013-09-26 16:46 gyzhao 阅读(807) 评论(0) 推荐(2) 编辑
摘要:存储过程就是为以后使用而保存的一条或多条SQL 语句。可将其视为批文件,虽然它们的作用不仅限于批处理。1. 存储过程的优点和缺点存储过程的优点:使用存储过程有三个主要的好处,即简单、安全、高性能:通过把处理封装在一个易用的单元中,可以简化复杂的操作由于不要求反复建立一系列处理步骤,因而保证了数据的一致性。可以防止错误。需要执行的步骤越多,出错的可能性就越大。简化对变动的管理。提高安全性。通过存储过程限制对基础数据的访问,减少了数据讹误(无意识的或别的原因所导致的数据讹误)的机会存储过程通常以编译过的形式存储... 阅读全文
posted @ 2013-09-26 10:50 gyzhao 阅读(532) 评论(0) 推荐(1) 编辑
摘要:视图视图是虚拟的表。与包含数据的表不一样,视图只包含使用时动态检索数据的查询。为什么使用视图重用SQL 语句简化复杂的SQL 操作。在编写查询后,可以方便地重用它而不必知道其基本查询细节使用表的一部分而不是整个表保护数据。可以授予用户访问表的特定部分的权限,而不是整个表的访问权限更改数据格式和表示。视图可返回与底层表的表示和格式不同的数据注意... 阅读全文
posted @ 2013-09-24 23:01 gyzhao 阅读(478) 评论(0) 推荐(1) 编辑
摘要:创建表的两种办法:使用DBMS 提供的交互式创建和管理数据库表的工具;直接用SQL 语句创建。表创建基础创建表示例:1 CREATE TABLE Products2 (3 prod_id CHAR(10) NOT NULL,--是否可以为null4 vend_id CHAR(10) NOT NULL,5 prod_name CHAR(254) NOT NULL,6 prod_price DECIMAL(8,2) NOT NULL,7 prod_desc VARCHAR(1000) NULL8 );注意:理解NULL不要把NULL 值与空字符串相混淆... 阅读全文
posted @ 2013-09-19 23:21 gyzhao 阅读(751) 评论(0) 推荐(0) 编辑
摘要:更新数据基本的UPDATE语句,由三部分组成:要更新的表列名和它们的新值确定要更新那些行的过滤条件更新单列示例:1 UPDATE Customers2 SET cust_email = 'kim@thetoystore.com'3 WHERE cust_id = '1000000005';更新多列的示例... 阅读全文
posted @ 2013-09-19 13:27 gyzhao 阅读(498) 评论(0) 推荐(0) 编辑
摘要:NSERT 用来将行插入(或添加)到数据库表。插入有几种方式:插入完整的行;插入行的一部分;插入某些查询的结果。存储到表中每一列的数据在VALUES 子句中给出,必须给每一列提供一个值。如果某列没有值,则应该使用NULL 值(假定表允许对该列指定空值)。各列必须以它们在表定义中出现的次序... 阅读全文
posted @ 2013-09-19 10:45 gyzhao 阅读(962) 评论(0) 推荐(1) 编辑
摘要:什么是组合查询SQL 通过执行多个查询(多条SELECT 语句),并将结果作为一个查询结果集返回。这些组合查询通常称为并(union)或复合查询(compound query)。什么时候使用组合查询一般以下两种情况需要使用组合查询:在一个查询中从不同的表返回结构数据;对一个表执行多个查询,按一个查询返回数据。提示:组合查询和多个WHERE 条件多数情况下... 阅读全文
posted @ 2013-09-17 22:59 gyzhao 阅读(1045) 评论(0) 推荐(0) 编辑
摘要: 1. 使用表别名SQL 除了可以对列名和计算字段使用别名,还允许给表名起别名。这样 做有两个主要理由:缩短SQL 语句;允许在一条SELECT 语句中多次使用相同的表。使用表别名示例:1 SELECT cust_name, cust_contact2 FROM Customers AS C, Orders AS O,注意:Oracle 中没有AS这个关键字... 阅读全文
posted @ 2013-09-15 17:20 gyzhao 阅读(692) 评论(0) 推荐(0) 编辑
摘要:可伸缩(scale)能够适应不断增加的工作量而不失败。设计良好的数据库或应用程序 称为可伸缩性好(scale well)。联结(JOIN)联结(JOIN)是一种机制,用来在一条SELECT 语句中关联表,因此称为联结1. 创建联结创建联结非常简单,指定要联结的所有表以及关联它们的方式即可:1 SELECT vend_name, prod_name, prod_price2 FROM Vendors, Products3 WHERE Vendors.vend_id = Products.vend_id;警告:完全限定列名在引用的列可能出现歧义时,必须使用... 阅读全文
posted @ 2013-09-02 19:39 gyzhao 阅读(793) 评论(0) 推荐(0) 编辑