Oracle和MySQL、PostgreSQL特性对比
随着现代数据库可用特征集的迅速增加,很难区分孰好孰坏。例如Oracle里就有许多你可能从来都不需要的高级数据仓库特征。此外也可能有一些其它不可或缺的特征比如ACID事务特性。我们来看一看主要的一些特征,比如存储过程,视图,快照,表数据类型和事务等等。同时我们分析一下Postgresql,MySQL和Oracle这几个数据库,然后找出哪个能够满足你的需求。
存储过程
数据库里的存储应用程序肯定会有它的拥护者和贬低者。在这个问题上我还不清楚自己属于哪一类,所以我尽量对这两个方面都讨论。当你开始在数据库里放置应用程序代码时,你就处于了彻底不可移植的境地。你把应用程序移植到另一个数据库时,那段代码将不得不被重写。但是它对原来数据库的高度专一性意味着它可以利用那个引擎,和那个引擎紧紧捆绑在一起。有时候数据库里的存储代码要明显快得多。在对数据做了修改之后,你不得不更新一百万行的某些数据块。
在存储过程里,数据的读入、操纵和更新是一步完成的。然而你要在中间层应用程序中做同样事情的话,你就不得不通过网络发送数据集,完成数据操纵,然后将它发送回来。这不但使任务的速度变慢,而且竞争同一数据的其他事务有可能不得不等待,因为它需要的数据正处于传送和操纵状态。存储代码也可以用来密封特定的请求,这对简化你整体的应用程序是很重要的。这三个数据库都支持存储过程和函数。Oracle还支持包,或者说是存储过程的集合以及几乎没有人用过的各种面向对象特征的集合。还要说明一点,一个数据库引擎实际上是在存储代码和嵌入在里面的SQL代码之间关联转换。Oracle 9i版本引入了成批绑定技术,所以你能够对许多行进行处理,并且能够一次性更新它们,而不是单个循环迭代。这个特征大幅度改善了性能。
视图
视图基本上是存储查询,正因为如此执行起来才不会过度复杂。然而当用于查询时,他们必然会使查询复杂化。所以很明显,数据库在视图可用之前一定要支持子查询。Oracle很早就已经有视图了。从5.0版本开始,MySQL也已经支持视图。跟Oracle一样,MySQL也支持UPDATEABLE视图,但是有一些限制。Postgres也支持视图和UPDATEABLE视图。更详细的解释见Complex SQL部分。
物化图(快照)
不用说,Oracle对它们支持得非常好。作为一种新事物,物化图(我更喜欢快照这个可视化的术语,有点离题了)是一个周期性更新的副本或者是表的子集。可以把视图看做是查询的一个副本。直到下一次刷新,那个副本是静�
相关文档:
.net调用oracle出现无法加载oramts.dll
在调用oracle时出现无法加载oramts.dll 这时可以尝试以下方法:
先要看在连接字符串中.是否添加了enlist=false;通常不添加这个属性..系统将不会去自动调用oramts.dll
详情请看
将msvcrtd.dll拷到 C:windows\system32\
......
The DB File Scattered Read wait event generally indicates waits related to full table scans or fast
full index scans. As full table scans are pulled into memory, they are scattered throughout the
buffer cache, since it is usually unlikely that they fall into contiguous buffers. A large numb ......
1.LVM:
[root@vmfs ~]# pvdisplay
--- Physical volume ---
PV Name /dev/sdg
VG Name db_v4
PV Size  ......
SQL*LOADER是ORACLE的数据加载工具,通常用来将操作系统文件迁移到ORACLE数据库中。SQL*LOADER是大型数据
仓库选择使用的加载方法。
在NT下,SQL*LOADER的命令为SQLLDR,在UNIX下一般为sqlldr/sqlload。
如执行:d:\oracle>sqlldr
SQL*Loader: Release 8.1.6.0.0 - Production on 星期二 1月 8 11:06:42 2 ......
自增长类型增加
1.如果dbms是MsSql,则选定表后,database-> edit current dbms-> 出现DBMS properties对话框,选择General页,左侧的树选择SQL 2000-> Profile-> Column-> Extended Attributes 下面的ExtIdentityIncrement是步进 ......