数据库编程与设计
文章平均质量分 78
kinglino520
这个作者很懒,什么都没留下…
展开
-
数据库并发问题详述
数据库并发问题详述 数据库并发问题详述 问题背景及特点: 我们在使用多用户数据库时常常会碰到数据更新失败、删除失等情况,如果有多个用户且同时访问一个数据库则当他们的事务同时使用相同的数据时可能会发生并发问题。 并发问题包括: 1.丢失或覆盖更新。(幻像读) 2.未确认的相关性(脏读)。 3.不一致的分析(非重复读)。 详细描述: 1.丢失更新 当两转载 2009-03-24 11:57:00 · 358 阅读 · 0 评论 -
数据库相关--一篇关于优化SQL的文章
SQL语句: 是对数据库(数据)进行操作的惟一途径; 消耗了70%~90%的数据库资源;独立于程序设计逻辑,相对于对程序源代码的优化,对SQL语句的优化在时间成本和风险上的代价都很低; 可以有不同的写法;易学,难精通。 SQL优化: 固定的SQL书写习惯,相同的查询尽量保持相同,存储过程的效率较高。 应该编写与其格式一致的语句,包括字母的大小写、标点符号、换行的位置等转载 2009-07-23 09:25:00 · 307 阅读 · 0 评论 -
数据库:简单的类似ibatis的sqlmap工具
最近弄了个超简单的sqlmap出来类似于ibatis sqlmap的做法,具体实现见附件的SqlMap.java20060428 sql写在专门的配置文件sqlmap.txt t_user.insert=insert into t_user(id,name) values(${id},${name}) t_user.update=update t转载 2009-07-23 10:30:00 · 543 阅读 · 0 评论 -
数据库:我来谈谈EasyDBO的持久化策略
先说说我对EasyDBO的一些个人的看法,EasyDBO是一个超轻量级的目前只支持单表映射的持久化框架,超轻量意味着入手很简单,使用很方便,但注意它是单表映射,导致在处理一些映射关系的时候要做一些特别的处理。在这里我说一些个人在使用EasyDBO对一般持久化策略的愚见。 一对一 一对一关系要分为两种情况,一是主表对从表的映射。如Name(firstName, l转载 2009-07-23 10:45:00 · 283 阅读 · 0 评论 -
数据库相关:实现不同数据库之间的迁移
受很多朋友的要求,在工作当中很时候要对数据库进行迁移,本人利用业余时间编写了一个迁移的实例,有这方面需要的朋友们可以借鉴和指正!本例主要实现Oracle向Access的迁移,综合运用Java JDBC驱动以及JDBC-ODBC桥分别连接Oracle数据库管理系统和Access数据库,其他的数据迁移也是一样,只不过修改一下连接方式而已!本例中将Oracle中获取的数据,直接插到Acce转载 2009-07-23 11:11:00 · 959 阅读 · 0 评论 -
数据集市技术应用一瞥
随着某省移动公司的商业智能(BI)系统逐渐完善,激发了地市分公司旺盛的应用需求,具体表现为对数据粒度的要求更加精细、需求更加灵活多变、要求更强的可操作性。为了让省移动公司的经营分析系统在地市级公司 日常生产经营中发挥更大作用,省移动公司决定为地市公司搭建更符合本地特色的"数据集市"平台。 该平台作为省级经营分析数据仓库的子集,在保障与省级转载 2009-07-31 15:17:00 · 790 阅读 · 0 评论 -
探求数据仓库关键环节ETL的本质
做数据仓库系统,ETL是关键的一环。说大了,ETL是数据整合解决方案,说小了,就是倒数据的工具。回忆一下工作这么些年来,处理数据迁移、转换的工作倒还真的不少。但是那些工作基本上是一次性工作或者很小数据量,使用access、DTS或是自己编个小程序搞定。可是在数据仓库系统中,ETL上升到了一定的理论高度,和原来小打小闹的工具使用不同了。究竟什么不同,从名字上就可以看到,人家已经将倒数据的过转载 2009-07-31 15:43:00 · 430 阅读 · 0 评论 -
ETL(数据抽取)
ETL,Extraction-Transformation-Loading的缩写,中文名称为数据抽取、转换和加载。ETL负责将分布的、异构数据源中的数据如关系数据、平面数据文件等抽取到临时中间层后进行清洗、转换、集成,最后加载到数据仓库或数据集市中,成为联机分析处理、数据挖掘的基础。ETL是数据仓库中的非常重要的一环。它是承前启后的必要的一步。相对于关系数据库,数据仓库技转载 2009-07-31 15:44:00 · 1514 阅读 · 0 评论 -
数据仓库建模与ETL实践技巧
在上一期的专栏文章中,我们曾经提到:数据分析系统的总体架构分为四个部分 —— 源系统、数据仓库、多维数据库、客户端(图一:pic1.bmp)其中,数据仓库(DW)起到了数据大集中的作用。通过数据抽取,把数据从源系统源源不断地抽取出来,可能每天一次,或者每3个小时一次(当然是自动的)。这个过程,我们称之为ETL转载 2009-07-31 15:41:00 · 657 阅读 · 0 评论 -
三大主流ETL工具选型
ETL(extract, transform andload)产品乍看起来似乎并不起眼,单就此项技术本身而言,几乎也没什么特别深奥之处,但是在实际项目中,却常常在这个环节耗费太多的人力,而在后续的维护工作中,更是往往让人伤透脑筋。之所以出现这种状况,恰恰与项目初期没有正确估计ETL工作、没有认真考虑其工具支撑有很大关系。 做ETL产品的选型,仍然需要从以前说的四点(即成本转载 2009-07-31 15:46:00 · 506 阅读 · 0 评论 -
事务隔离
12.2. 事务隔离 SQL 标准用三个必须在并行的事务之间避免的现象定义了四个级别的事务隔离。 这些不希望发生的现象是: 脏读(dirty reads) 一个事务读取了另一个未提交的并行事务写的数据。 不可重复读(non-repeatable reads)转载 2009-11-18 11:49:00 · 530 阅读 · 0 评论 -
明确锁定
12.3. 明确锁定 PostgreSQL 提供了各种各样的锁模式用于控制对表中的数据的并发访问。 这些模式可以用于在 MVCC 无法给出期望的行为的时候用于应用控制的锁定。 同样,大多数 PostgreSQL 命令自动施加恰当的锁以保证被引用的表在命令执行的时候不会以一种不兼容的方式被删除或者修改。 (比如,在存在其它并发操作的时候,ALTER TA转载 2009-11-18 13:47:00 · 422 阅读 · 0 评论 -
日期格式化
Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 <object cl原创 2009-05-12 09:50:00 · 509 阅读 · 0 评论 -
数据库相关--关于数据库恢复技术技巧
只有mdf文件的恢复技术由于种种原因,我们如果当时仅仅备份了mdf文件,那么恢复起来就是一件很麻烦的事情了。如果您的mdf文件是当前数据库产生的,那么很侥幸,也许你使用sp_attach_db或者sp_attach_single_file_db可以恢复数据库,但是会出现类似下面的提示信息:设备激活错误。物理文件名 C:/Program Files/Microsoft SQL Ser转载 2009-07-23 09:34:00 · 323 阅读 · 0 评论 -
数据库主键设计之思考
主键的必要性 有些朋友可能不提倡数据库表必须要主键,但在我的思考中,觉得每个表都应该具有主键,不管是单主键还是双主键,主键的存在就代表着表结构的完整性,表的记录必须得有唯一区分的字段,主键主要是用于其他表的外键关联,本记录的修改与删除,当我们没有主键时,这些操作会变的非常麻烦。主键的无意义性我强调主键不应该具有实际的意义,这可能对于一些朋友来说不太认同,比如订单表吧,会有转载 2009-03-27 17:11:00 · 524 阅读 · 0 评论 -
数据库主外键设计原则
主键和外键是把多个表组织为一个有效的关系数据库的粘合剂。主键和外键的设计对物理数据库的性能和可用性都有着决定性的影响。 必须将数据库模式从理论上的逻辑设计转换为实际的物理设计。而主键和外键的结构是这个设计过程的症结所在。一旦将所设计的数据库用于了生产环境,就很难对这些键进行修改,所以在开发阶段就设计好主键和外键就是非常必要和值得的。主键: 关系数据库依赖于主键---它是数据库物转载 2009-03-27 16:57:00 · 841 阅读 · 0 评论 -
数据库设计逻辑主键
在数据库设计中我们经常会存在是否为表建立逻辑主键(代理主键)的问题。 使用逻辑主键的好处: 1.业务系统中需要关联时使用逻辑ID进行关联--而不是有业务ID做关联--使业务系统具有最大的灵活性,及业务ID也是可以修改的,如果使用业务ID做主键,则该条记录就不能被修改。但是这种情况时有发生。 例如:现在客户所有产品编号要升级在原来基础上加上分公司编号。如果系统采用逻辑ID关联则转载 2009-03-27 17:03:00 · 3173 阅读 · 0 评论 -
Hibernate主键生成方式
Hibernate主键生成方式 Key Generator主键产生器可选项说明:1) assigned主键由外部程序负责生成,无需Hibernate参与。2) hilo通过hi/lo 算法生成主键,需要一个表来保存额外的主键信息。这样生成的标识符只在特定的数据库是唯一的,在使用JTA(Java分布式事务) 获得链接或用户自定义提供的链接中,不要使用这种生成器原创 2009-03-31 15:13:00 · 626 阅读 · 0 评论 -
SQL命令大全-中英文对照
--语 句 功 能 --数据操作 SELECT --从数据库表中检索数据行和列 INSERT --向数据库表添加新数据行 DELETE --从数据库表中删除数据行 UPDATE --更新数据库表中的数据 --数据定义 CREATE TABLE --创建一个数据库表 DROP TABLE --从数据库中删除表 ALTER TABLE --修改数据原创 2009-03-30 16:29:00 · 467 阅读 · 0 评论 -
jtds
JTDS是一个开放源代码的100%纯Java的,用于JDBC 3.0驱动Microsoft SQL Server (6.5 ,7,2000和2005版本)和Sybase(10 ,11 ,12 ,15 版本)的驱动程序 。JTDS是基于freetds的,并且是目前最快的生产准备JDBC驱动程序为SQL Server和Sybase 。 JTDS完全与JDBC3.0兼容,支持只向前的,和可转载 2009-04-29 17:44:00 · 394 阅读 · 0 评论 -
SQL Server 系统表详细说明
sysaltfiles 主数据库 保存数据库的文件 syscharsets 主数据库字符集与排序顺序sysconfigures 主数据库 配置选项 syscurconfigs 主数据库当前配置选项 sysdatabases 主数据库服务器中的数据库 syslanguages 主数据库语言 syslogins 主数据库 登陆帐号信息 sysoledbu转载 2009-05-05 10:29:00 · 474 阅读 · 0 评论 -
深入浅出SQL教程之Group By和Having
[关键字]SQL Group By Having 在介绍GROUP BY 和 HAVING 子句前,我们必需先讲讲sql语言中一种特殊的函数:聚合函数,例如SUM, COUNT, MAX, AVG等。这些函数和其它函数的根本区别就是它们一般作用在多条记录上。 SELECT SUM(population) FROM bbc 这里的SUM作用在所有返回记录的population字段上,结果就转载 2009-05-06 17:54:00 · 357 阅读 · 0 评论 -
MS SQL视图使用详解
视图是为用户对数据多种显示需求而创建的,其主要用在一下几种情况: (1)限制用户只能访问特定表特定条件的内容,提高系统的安全性。 (2)隐藏表结构、创建多种形式的数透视,满足不同用户需求。 (3)将复杂的SELECT语句和表JION形成一个视图,给用户提供一个良好的接口。 (4)为使用频率较高的联表聚合运算创建索引视图,以提升程序的性能。 (5)创建分区视图调用远程数据,实现数据的分布式存储转载 2009-05-08 15:39:00 · 829 阅读 · 0 评论 -
基于JDBC的数据库连接池技术研究与应用
近年来,随着Internet/Intranet建网技术的飞速发展和在世界范围内的迅速普及,计算机 应用程序已从传统的桌面应用转到Web应用。基于B/S(Browser/Server)架构的3层开发模式逐渐取代C/S(Client/Server)架构的开发模式,成为开发企业级应用和电子商务普遍采用的技术。在Web应用开发的早期,主要使用的技术是CGI?ASP?PHP等。之后,Sun公司转载 2009-07-23 13:04:00 · 300 阅读 · 0 评论 -
数据挖掘
http://baike.baidu.com/view/7893.htm转载 2009-05-11 15:51:00 · 421 阅读 · 0 评论 -
数 据 库 设 计 经 验 谈
数据库模型的设计是否合理会极大影响系统的使用性能。笔者依据多年来设计和使用数据库的经验,提出以下一些设计原则,供同仁们参考。 慎用游标(Cursor) 游标提供了对特定集合中逐行扫描的手段,一般使用游标来逐行遍历数据,根据取出数据条件的不同进行不同的操作。而对于多表和大表中定义的游标(大的数据集合)循环很容易使程序进入一个漫长的等待甚至死机,笔者在某市“住房公积转载 2010-05-12 17:03:00 · 431 阅读 · 0 评论