数据库设计
文章平均质量分 56
fightplane
这个作者很懒,什么都没留下…
展开
-
数据库设计方法、规范与技巧
一、数据库设计过程数据库技术是信息资源管理最有效的手段。数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,有效存储数据,满足用户信息要求和处理要求。数据库设计中需求分析阶段综合各个用户的应用需求(现实世界的需求),在概念设计阶段形成独立于机器特点、独立于各个DBMS产品的概念模式(信息世界模型),用E-R图来描述。在逻辑设计阶段将E-R图转换成具体的数据库产品支持原创 2004-10-19 09:02:00 · 938 阅读 · 0 评论 -
JDBC 3种获得mysql插入数据的自增字段值的方法
获得mysql auto increment字段值的3种方法居然在mysql自带的docs中找到了。下面测试程序可以运行1。Retrieving AUTO_INCREMENT Column Values using Statement.getGeneratedKeys()2。Retrieving AUTO_INCREMENT Column Values using SELECT LAST_INSE转载 2007-03-13 13:36:00 · 1375 阅读 · 0 评论 -
SQL中以count及sum为条件的查询
在开发时,我们经常会遇到以“累计(count)”或是“累加(sum)”为条件的查询。比如user_num表: id user num 1 a 3转载 2007-03-14 11:31:00 · 11374 阅读 · 1 评论 -
浅谈数据库设计技巧
说到数据库,我认为不能不先谈数据结构。1996年,在我初入大学学习计算机编程时,当时的老师就告诉我们说:计算机程序=数据结构+算法。尽管现在的程序开发已由面向过程为主逐步过渡到面向对象为主,但我还是深深赞同8年前老师的告诉我们的公式:计算机程序=数据结构+算法。面向对象的程序开发,要做的第一件事就是,先分析整个程序中需处理的数据,从中提取出抽象模板,以这个抽象模板设计类,再在其中逐步添加处理其数据转载 2007-09-25 09:08:00 · 543 阅读 · 0 评论 -
大型数据库的设计原则与开发技巧
随着计算机技术越来越广泛地应用于国民经济的各个领域,在计算机硬件不断微型化的同时,应用系统向着复杂化、大型化的方向发展。数据库是整个系统的 核心,它的设计直接关系系统执行的效率和系统的稳定性。因此在软件系统开发中,数据库设计应遵循必要的数据库范式理论,以减少冗余、保证数据的完整性与正 确性。只有在合适的数据库产品上设计出合理的数据库模型,才能降低整个系统的编程和维护难度,提高系统的实际运行效率。虽转载 2007-09-25 09:12:00 · 649 阅读 · 0 评论 -
sql 查询经典语句
SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)首先,简要介绍基础语句:1、说明:创建数据库CREATE DATABASE database-name 2、说明:删除数据库drop da转载 2007-09-20 11:36:00 · 625 阅读 · 0 评论 -
关系数据库的几种设计范式
从这周开始进入数据库的学习。以前数据库方面接触很少,这次是个难得机会,一定要尽力把数据库学好。今天主要学习了范式。什么是范式呢?范式其实就 是数据库设计的一种规范,按照这种规范设计的数据库会使结构更清晰,其实最主要的目的就是尽量减少数据的冗余,避免数据异常。因此我们应该从这方面来理解 范式,而不是单单从概念上理解范式 。下面是从其他地方转来的关于范式的介绍,相信从这篇文章里能够基本上对范式的概念以转载 2007-09-25 09:18:00 · 679 阅读 · 0 评论 -
JOIN的分類
JOIN的分類join : 左右合併 inner join : 只顥示符合修件的資料列 (左右互相比對)left join : 顥示符合條件的右資料列及左邊不符合條件的資料列 (此時右邊的資料會以 NULL 顯示)right join : 顥示符合條件的左資料列及左邊不符合條件的資料列 (此時左邊的資料會以 NULL 顯示)full join : 顥示符合條件的料列及左邊+右邊不符合條件的資料转载 2007-11-14 14:15:00 · 824 阅读 · 0 评论 -
MySQL索引分析和优化
MySQL索引分析和優化+JOIN的分類 索引用来快速地寻找那有特定值的记录,所有MySQL索引都以B-树的形式保存。如果没有索引,执行查询时MySQL必须从第一个记录开始扫描整个表的所有记录,直至找到符合要求的记录。表里面的记录数量越多,这个操作的代价就越高。如果作为搜索条件的列上已经创建了索引,MySQL无需扫描任何记录即可迅速得到目标记录所在的位置。如果表有1000个记录,通过索引查转载 2007-11-14 09:00:00 · 634 阅读 · 0 评论 -
纯真IP数据库格式详解
自从有了IP数据库这种东西,QQ外挂的显示IP功能也随之而生,本人见识颇窄,是否还有其他应用不得而知,不过,IP数据库确实是个不错的东西。如今网络上最流行的IP数据库我想应该是纯真版的(说错了也不要扁我),迄今为止其IP记录条数已经接近30000,对于有些IP甚至能精确到楼层,不亦快哉。2004年4、5月间,正逢LumaQQ破土动工,为了加上这个人人都喜欢,但是好像人人都不知道为什么喜欢的显IP功转载 2007-11-16 15:47:00 · 715 阅读 · 0 评论 -
MySQL replace statement
REPLACE是MySQL对SQL标准的扩展,它会插入记录,或者删除记录再插入记录。如果REPLACE使用的主键或者唯一索引列的值在表中能够找到,则删除该记录再插入新的记录,否则只是插入。如果表没有主键或者唯一索引,那么只是插入。mysql> desc test;+-------+-------------+------+-----+---------+-------+| Field | Type转载 2007-03-13 13:14:00 · 1599 阅读 · 0 评论 -
数据库命名规范
数据库命名规范 一.实体和属性的命名1. 常用单词已经进行了缩写,在命名过程当中,根据语义拼凑缩写即可。注意,由于ORCAL数据库会将字段名称统一成大写或者小写中的一种,所以要求加上下划线举例:定义的缩写 Sales: Sal 销售;Order: Ord 订单;Detail: Dtl 明细;则销售订单名细表命名为:Sal_Ord_Dtl;2. 如果表或者是字段的名称仅有一个单词,那么建议不使用缩写原创 2004-10-19 09:07:00 · 1188 阅读 · 0 评论 -
mysql max 版本如何修改默认字符集。
在max 版本的mysql中由于安装过程不需要configure所以无法在安装过程配置默认字符集。唯一的办法就是在数据源目录下,即data目录下建立一个my.cnf文件,文件内容如下:[mysqld]default-character-set=gb2312然后重新启动mysql.原创 2004-11-02 10:36:00 · 1031 阅读 · 0 评论 -
MySql正则表达式的描述
正则表达式(regex)是定义复杂查询的一个强有力的工具。 这里是一个简单的资料,它忽略了一些详细的信息。 正则表达式定义了一个字符串的规则。最简单的正则表达式不包含任何保留字。例如, 正则表达式hello只和字符串“hello”匹配。 一般的正则表达式使用了某些特殊的结构,所以它能匹配更多的字符串。例如,正则 表达式hello|word既能匹配字符串“hello”也能匹配字符串“word”。 举原创 2004-11-16 08:32:00 · 787 阅读 · 0 评论 -
海量数据库的查询优化及分页算法方案
海量数据库的查询优化及分页算法方案 随着“金盾工程”建设的逐步深入和公安信息化的高速发展,公安计算机应用系统被广泛应用在各警种、各部门。与此同时,应用系统体系的核心、系统数据的存放地――数据库也随着实际应用而急剧膨胀,一些大规模的系统,如人口系统的数据甚至超过了1000万条,可谓海量。那么,如何实现快速地从这些超大容量的数据库中提取数据(查询)、分析、统计以及提取数据后进行数据分原创 2004-12-29 08:35:00 · 982 阅读 · 0 评论 -
如何在MySQL中获得更好的全文搜索结果
很多互联网应用程序都提供了全文搜索功能,用户可以使用一个词或者词语片断作为查询项目来定位匹配的记录。在后台,这些 程序使用在一个SELECT查询中的LIKE语句来执行这种查询,尽管这种方法可行,但对于全文查找而言,这是一种效率极端低下的方法,尤其在处理大量数 据的时候。转载 2006-12-21 14:27:00 · 1084 阅读 · 0 评论 -
优化MYSQL服务器
MySQL服务器有几个影响其操作的参数(变量)。如果缺省的参数值不合适,可以将其修改为对服务器运行环境更合适的值。例如,如果您有大量的内存,可以告诉服务为磁盘和索引操作使用较大的缓冲区。这将使内存持有更多的信息并减少了必须进行的磁盘访问的数 量。如果是一般的系统,可以告诉服务器使用较小的缓冲区,以防止它扰乱系统资源损害其他的进程。 系统变量的当前值可以通过执行mysqladmin v转载 2006-12-21 16:36:00 · 1145 阅读 · 0 评论 -
mysql中插入记录的同时怎样返回它的id值
表结构id int(11) not null pri key auto_increment,name varchar(12),backup varchar(50)现在想插入一条记录的同时,返回他的id值(插入时只是插入name和backup字段的值)。请问该如何写这条语句。谢谢! 你的担心完全多于。 不需要锁表, 返回的ID肯定是你的,基于当前连接session 自动返回最后一个INSER转载 2007-01-08 16:26:00 · 8792 阅读 · 1 评论 -
如何用触发器管理MySQL数据库
在SQL中,名词触发器指“在数据库中为响应一个特殊表格中的某些事件而自动执行的程序代码。”(Wikipedia)说得简单一些,它是在一个特殊的数据库事件,如INSERT或DELETE发生时,自动激活的一段代码。触发器可方便地用于日志记录、对单个表格到其他链接式表格进行自动的“层叠式”更改、或保证对表格关系进行自动更新。当一个新整数值增加到数据库域中时,自动更新运行的总数的代码段是一个触发器。自动记原创 2007-01-18 09:49:00 · 1675 阅读 · 3 评论 -
数据库连接、设计以及备份技巧集锦
JDBC操作各种数据库经验技巧集萃 Java 数据库连接(JDBC)由一组用 Java 编程语言编写的类和接口组成。JDBC 为工具/数据库开发人员提供了一个标准的 API,使他们能够用纯Java API 来编写数据库应用程序。然而各个开发商的接口并不完全相同,所以开发环境的变化会带来一定的配置变化。本文主要集合了不同数据库的连接方式。一、连接各种数据库方式速查表 下面罗列了各种数据库使用J转载 2007-01-18 10:16:00 · 1176 阅读 · 0 评论 -
JDBC板块精华整理20051226
JDBC3.0的特性1、JDBC3.0规范中数据库连接池框架 JDBC3.0规范中通过提供了一个支持数据库连接池的框架,这个框架仅仅规定了如何支持连接池的实现,而连接池的具体实现JDBC 3.0规范并没有做相关的规定。通过这个框架可以让不同角色的开发人员共同实现数据库连接池。 通过JDBC3.0规范可以知道具体数据库连接池的实现可以分为JDBC Driver级和Application转载 2007-01-18 11:20:00 · 1001 阅读 · 0 评论 -
五种提高 SQL 性能的方法
有时, 为了让应用程序运行得更快,所做的全部工作就是在这里或那里做一些很小调整。啊,但关键在于确定如何进行调整!迟早您会遇到这种情况:应用程序中的 SQL 查询不能按照您想要的方式进行响应。它要么不返回数据,要么耗费的时间长得出奇。如果它降低了报告或您的企业应用程序的速度,用户必须等待的时间过长,他们就会很不满意。就像您的父母不想听您解释为什么在深更半夜才回来一样,用户也不会听你解释为什么查询耗费转载 2007-12-04 10:16:00 · 599 阅读 · 0 评论