您的位置:首页 > 数据库 > Oracle

sql server 与 oracle 的区别

2009-12-26 07:55 411 查看
我先抛砖引玉:

1. 开发性: SQLSERVER不能,ORACLE能装在UNIX上
2. 分区表: SQLSERVER不能,ORACLE能根据INDEX的值的范围,把数据存放到
不同的硬盘空间.
3. AUTONOMOUS_TRANSACTION;SQLSERVER不能,ORACLE能在主TRANSACTION中独立
COMMIT或ROLLBACK子TRANSACTION而不影响主TRANSACTION.

请继续,高分伺候
---------------------------------------------------------------

4.Oracle可以利用回滚表空间查询以前(如1小时前)的信息,SQLServer不能
5.Oracle可以进行用户资源管理(CPU使用率等),SQLServer不能
6.Oracle支持Label Security,SQLServer不能

---------------------------------------------------------------

支持一下,来帖一段

开放性:
SQL Server
只能在windows 上运行,没有丝毫的开放性,操作系统的系统的稳定对数据库是十分重要的。Windows9X系列产品是偏重于桌面应用,NT server只适合中小型企业。而且windows平台的可靠性,安全性和伸缩性是非常有限的。它不象unix那样久经考验,尤其是在处理大数据量的关键业务时.

Oracle
能在所有主流平台上运行(包括 windows)。完全支持所有的工业标准。采用完全开放策略。可以使客户选择最适合的解决方案。对开发商全力支持。

可伸缩性,并行性
SQL server
DB2
并行实施和共存模型并不成熟。很难处理日益增多的用户数和数据卷。伸缩性有限。

Oracle
平行服务器通过使一组结点共享同一簇中的工作来扩展windownt的能力,提供高可用性和高伸缩性的簇的解决方案。
如果windowsNT不能满足需要, 用户可以把数据库移到UNIX中。

安全性
SQL server
没有获得任何安全证书。

Oracle Server
获得最高认证级别的ISO标准认证。

性能
SQL Server
多用户时性能不佳

Oracle
性能最高, 保持windowsNT下的TPC-D和TPC-C的世界记录。

客户端支持及应用模式
SQL Server
C/S结构,只支持windows客户,可以用ADO,DAO,OLEDB,ODBC连接.

Oracle
多层次网络计算,支持多种工业标准,可以用ODBC,JDBC,OCI等网络客户连接

操作简便
SQL Server
操作简单,但只有图形界面.

Oracle
较复杂, 同时提供GUI和命令行,在windowsNT和unix下操作相同

使用风险
SQL server
完全重写的代码,经历了长期的测试,不断延迟,许多功能需要时间来证明。并不十分兼容早期产品。使用需要冒一定风险。

Oracle
长时间的开发经验,完全向下兼容。得到广泛的应用。完全没有风险。

---------------------------------------------------------------

Oracle可以建立位图索引,SQLServer不能。
Oracle可以建立函数索引,SQLServer不能。
SQLServer不支持前触发器,所有都是后触发器。

关于Oracle分区表,SQLServer 2000可以使用分区视图,原理也是一样,把不同物理空间的表联系在一起。
SQLServer能支持嵌套事务,事务上加上名字就好,就是说能在主事务中操作子事务。
---------------------------------------------------------------

oracle:
length() lengthb()
sqlserver:
datalength()
---------------------------------------------------------------

不了解sql server
---------------------------------------------------------------

似乎SQLServer只是表级触发器,不支持行级触发器
---------------------------------------------------------------

SQL好象也有命令行的。SQL也支持JDBC的。

ORACLE备份方式比较多,有STANDBY、RMAN、IMP等,SQL就比较简单了。
ORACLE可是实现多个日志文件的镜象,而SQL只有一个日志文件。
ORACLE有很少但很多数量的归档日志,而SQL只有一个日志文件,经常会增加到很大。
ORACLE的BLOCK SIZE可以根据OLTP或者DSS不同的应用自己设置,而SQL只能为8K。
ORACLE的内存是在数据库启动时就由参数文件决定了的,而SQL可以根据应用自动改变。

---------------------------------------------------------------

ORACLE有专门实现树形查询的语法,而SQL没有。
---------------------------------------------------------------

ORACLE可以修改字符集
SQLSERVER不能,必须重新安装

---------------------------------------------------------------

ORACLE可以安装各种平台
SQLSERVER不行

---------------------------------------------------------------

ORACLE可以卖的很贵却还有人买
SQLSERVER不行

---------------------------------------------------------------

也不太了解sqlserver。
它有Orcle中的分析函数和锁吗?

---------------------------------------------------------------

TO:ccbzzp(ccbzzp)
ORACLE可以修改字符集
SQLSERVER不能,必须重新安装

有问题,在SQL SERVER6.5是不可以的,在SQLSERVER2000已经完全可以
EXAMPLE:ALTER DATABSE DB_NAME COLLATE CHINESE_PRC_CI_AS
---------------------------------------------------------------

TO:OldMan0516(凡人0516)
MSSQL SERVER2000是完全可以行触发的!!!

如果大家有和问题可以到SQLSERVER板块去看看:-)
---------------------------------------------------------------

跟本不是一个量级上的东西,没什么可比性。
sql server也没说要和oracle比呀,人家在windowns平台自我完善呢。
---------------------------------------------------------------

http://expert.csdn.net/Expert/topic/1810/1810360.xml?temp=.4442407
---------------------------------------------------------------

ORACLE可以修改字符集
SQLSERVER不能,必须重新安装更改排序规则。

-------------------------------------
alter database 数据库 collate 排序规格

其中,某些排序规则指定CI 不区分大小写,CS 指定区分大小写。

如:alter database 数据库 COLLATE Chinese_PRC_CI_AS
不区分大小写,而
alter database 数据库 COLLATE Chinese_PRC_CS_AS
使之区分大小写。

使用如下命令,可以获得更多的规则:
SELECT *
FROM ::fn_helpcollations()

---------------------------------------------------------------

oracle可以有java过程sqlserver没有,而sqlserver可以用dll。
oracle9i有分析函数,sqlserver没有
oracle有rownum等伪列,sqlserver没有
sqlserver有full join,oracle9i才有
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: