你肯定不知道的oracle数据库和sql server的这些区别

合集下载

Oracle与SQL Server比较

Oracle与SQL Server比较

Oracle可在所有主流平台上运行,包括Windows、Unix、Linux等等。同时Oracle数据库采用开放的策略目标,它使得客户可以选择一种最适合他们特定需要的解决方案。客户可以利用很多种第三方应用程序、工具。对开发商来说是很大的支持。而SQL Server却只能在Windows上运行了,显得比较单调。从操作平台这点上Oracle是完全优胜于SQL Server的了。
Oracle与SQL Server比较
一、 操作平台
操作系统的稳定对数据库来说是十分重要的,由于SQL Server与Windows操作系统同属Microsoft公司的产品,所以在和Windows操作系统的整体结合程度、使用方便性、和Microsoft开发平台的整合性都比Oracle强的很多;但是Windows操作系统的稳定性及可靠性大家是有目共睹的,并且 Microsoft公司的策略目标是将客户都锁定到Windows平台的环境当中,只有随着Windows性能的改善,SQL Server才能进一步提高。
4. 临时表
SQL Server创建的临时表在创建后会由数据库自动回收。而Oracle的全局临时表会一直存在,但是其中数据在提交后会全部清除。
5. 帮助文档
SQL Server提供详细的中文说明文档,但是Oracle本身并不提供中文说明文档。最起码说明在针对中国市场上,Oracle并不如SQL Server态度积极。
三、 数据库管理
1. Oracle是针对表空间和用户来进行管理,而SQL Server是以针对单独的数据库进行管理。换另一种说法也就是,Oracle的数据权限分配是以用户可以访问哪些表作为依据。而SQL Server是以特定数据库中哪些用户可以访问作为依据。

SQLserver和Oracle的优劣对比

SQLserver和Oracle的优劣对比

SQLserver和Oracle的优劣随着信息技术的飞速发展,数据处理不仅在数量上要求越来越大,而且在质量上也要求越来越高。

Oracle数据库在大多数企业中受到广泛使用,而SQL Server数据库也因为和Windows 的联系,在企业中的使用也是非常广泛。

这边说Oracle数据库有如此这般功能,那边又说SQL Server这些个那些个特性,各持己见。

如今大型关系型数据库多数单位都使用的是Oracle数据库,Oracle数据库的安全理涉及很多方面,比如控制数据的一致性和并行性,建立不同安全域的用户组与用户,以及不同客户连接的不同权限,管理员对不同用户的角色和权限的控制,建立足够有效的审计安全策略等。

SQL Server是一个关系数据库管理系统,它是建立在Windows的可伸缩性和可管理性之上,提供功能强大的客户/服务器平台,高性能客户/服务器结构的数据库挂历系统可以将VisualBasic,VisualC++等众多语言作为客户端开发工具,而将SQL Server作为存储数据的后台服务器软件,随着SQL Server产品性能的不断扩大和改善,已经在数据库系统领域占有非常重要的地位。

下面我们将从以下几方面对SQL Server和Oracle的优劣进行对比:1.开放性:SQL Server:SQL Server只在Windows上运行,没有丝毫的开放性,Microsoft这种专有策略的目标是将客户锁定到Windows环境中。

由于SQL Server紧密的捆绑在Windows平台上,所以,只有随着Windows操作系统可靠性、开放性以及性能的改善,SQL Server的开放性和可靠性才能进一步提高,因此操作系统的系统的稳定对数据库是十分重要的。

windows9x系列产品是偏重于桌面应用,nt server只适合中小型企业。

而且windows平台的可靠性,安全性和伸缩性是非常有限的。

它不象unix那样久经考验,尤其是在处理大数据量的关键业务时。

sqlserver与oracle的区别

sqlserver与oracle的区别

sqlserver与oracle的区别SQL server 与Oracle开发比较本文档主要从oracle与sql server语法上进行差异性比较,诸如两者在管理,性能,优化等方面的差异不作比较。

●概念上区别1.Oracle是一种对象关系数据库管理系统(ORD BMS),而Sql serve r 只是关系型数据库管理系统(RDBMS).2.Oracle使用Internet文件系统,该系统基于Java的应用程序,可以使数据库基于成为Internet的开发平台;Sql se rver 是基于windows3.Orace主要的三类文件是:数据文件,控制文件,恢复日志文件Sql se rver: 主要数据文件(必须有且只能有一个),次要数据文件以及日志文件4.两者支持的命令类别差不多,数据定义语言,数据操纵语言,事务处理控制语言,数据控制语言.在Oracle中,在事务控制语言中除了commit,rollback等还多了一个Savepoint,设置保存点。

5.oracle sql的扩展叫PL/SQL,主要的结构化查询工具有sql*plus,isql*plus, pl/sql等Ms sql的扩展叫Transact-SQL,主要的结构化查询工具就是自带的查询分析器6.主要数据类型Orace:主要支持cha r ,va rchar2,lo ng,number,date time,ra w,lo ng ra w,clob,blob,bfie前面三个是Cha racter数据类型,varchar2支持可变长度的字符串,long支持可变长度的字符数据,ra w,long ra w用于存储二进制数据,lo ng ra w 可变长度最后三个是大对象(lob)数据类型,存储非结构化的信息,例如声音剪辑,视频文件CLOG表示Character Lob,可以存储大量的字符数据,它对于存储非结构化的XML文档非常有用。

BLOG表示Bina ry LOG,此数据类型可以存储大型二进制对象,如图形、视频剪辑,声音文件等支不支持,money,货币Sql se rver 主要支持的文本类型cha r ,va rchar,nchar,nvarchar,te xt,nte xt,image,货币类型Money,二进制binary,va rbina ry等等●开发语法A.SQL 语法两者的SQL语法基本上是相同的,只是一些细节方面的问题一:表的管理:修改表的结构,如增加,删除列,創建表修改表1.修改表的列的數據類型,大小的定義不同,如下面修改數據類型。

Oracle_MSSQLServrer数据库区别

Oracle_MSSQLServrer数据库区别

Oracle,MSSQL数据库的比较这几天,采用了Oracle数据库和MSSQL Server数据库,虽然各个数据库都采用标准的SQL语句,但是其语法之间还是有一定的差异,现将使用过程用到的各个功能的差异大致罗列一下。

1.关于建表语句的语法1.Oracle中可以使用Varchar2类型,但是MSSQL,Sybase中只能用Varchar类型2.Oracle中可以使用Number(12,2)表示金额,而MSSQL,Sybase中只能用对用的Numeric(12,2)来表示3.Oracle每条建表语句之间用分好;进行分隔,而MSSQL,Sybase中不能出现分好,每个建表语句之间用go进行区分。

分别举例如下:Oracle的建表语句create table t_SYSINFO(F_COMPANYNAME varchar2(60), --银行分行的名称F_Factor Number(12,2), --每年递增的系数值F_ReviseValue Number(12,2) --修正参数);MSSQLServer的建表语句如下:--系统信息表create table t_SYSINFO(F_COMPANYNAME varchar(60), --银行分行的名称F_Factor numeric(12,2), --每年递增的系数值F_ReviseValue numeric(12,2) --修正参数)Go2.关于存储过程的语法1.Oracle的存储过程的的语法和MSSQLServre的语法不一样Oracle的语法如下:Create or Replace Procedure *****( parm1 in varchar,Param2 out varchar)Is--各个变量定义,每个变量之间用逗号分隔Begin--SQL语句End/存储过程的参数之间用逗号隔开,同时用in或out说明参数的输入输出方式,一般用如下格式: param in varchar2——参数输入/输出参数类型.Oracle每个存储过程之间必须用斜杠‘/’进行分隔,以标明每个存储过程的结束(当然当个存储过程的结尾可以没有/,但是多个存储过程一起运行时,必须有/,否则系统会认为只有一个存储过程)Oracle中变量可以直接采用类似Delphi的语法进行赋值,即采用:=的方式Oracle每条语句之间必须用分号;进行分隔Oracle支持异常处理,比如运行某条select语句,其查询结果为空,此时系统会返回异常,存储过程中要捕获异常进行处理Select语句将字段内容赋值采用into的语法格式,例如:select F_Field1,F_Field2 into P_Parm1,P_Parm2 from TableIf语句必须有then,语法if(condition) then begin ****end;elsif begin *** end;else begin *** end;Oracle中日期类型,系统会当成数据类型进行处理,因此,日期可以直接相减,例如:P_date1=to_char(to_date(‘20140404’,’YYYYMMDD’)+10,’YYYYMMDD’);参数的类型转换,一般有to_date,to_char,to_number,函数参数的说明如下:第一个参数为要转换的字符串,第二个参数为转换后的格式,例如:to_char(sysdate,’YYYYMMDD’)转换成年月日的方式的字符串。

Oracle和SQLServer的主要区别

Oracle和SQLServer的主要区别
Oracle与 Server的主要区别 Oracle与Sql Server的主要区别
序号 Oracle 1.Oracle的参数文件init.ora是可调的,既我们可以根据数据库的规 模调整Oracle对系统资源的使用情况,以达到最合理的资源分配,让 Oracle达到最佳的性能。因此Oracle的性能优势体现在它的多用户 上,比较适用于访问量和并发用户数大的大型应用系统上。 2.游标是以提高速度全部统一的单项游标,可以允许多用户异步读 取,而且声明比较简单,就一句declare cursor游标名 is select 语句就可以了。 数据库性能 3.Oracle以块为最小存储单位,以区为单位分配空间,用户可以根据 需要自己定义块的大小,且区可以按等额或递增进行分配,这可以大 大减少系统的I/O操作提高数据库的性能。 4.ORACLE中用户可以根据数据需要在创建块时定义填充因子(空闲空 间的百分比)和复用因子(当块的存储数据所占的空间下降到这个百分 比之下时,块才重新标记为可用)。用户可以根据记录变化频率和数 据量的大小设置合适的填充因子和空闲因子。 Oracle的安全可靠性更高: 1.Oracle的数据字典和真实数据是分开存放的,不同的数据分别放在 不同的表空间,而且基表(存储系统参数信息)是加密存储,任何人都 无法访问,只能通过用户可视视图查看。安全性高。 2.在ORACLE里默认只有三个系统用户,ORACLE只能通过注册用户登入 安全性 。 3.Oracle的控制文件记录了数据库文件的物理位置和有效性,在每次 打开Oracle系统都将自动对数据进行验证,查看其有效性,防止数据 的丢失,这体现了Oracle对数据管理的严密性。 4.ORACLE在创建表时用户可以精确定义数据存放的表空间,甚至可以 把一张表分开存放在多个表空间中,这样可以将数据量庞大的表按某 Oralce可以很好地支持Windows、Linux等多种操作系统,跨平台性比 跨平台 较好 Oracle的存储结构是由块、区、段组成,可扩展性好,空间利用率 高,但是操作比较复杂: 1.ORACLE里有两个块参数PCTFREE(填充因子)和PCTUSED(复用因子), 块的大小可设置,这样可降低数据行连接与行迁移的可能性。 2.连续的块组成区,区的分配可以是等额的也可以是自增长的,这样 存储结构的不同 可以减少空间分配次数。 3.Oracle的表可以分为多个段,段由多个区组成,每个段可指定分配 在哪个表空间里,这样大大降低了磁盘争用的可能性。 4.Oracle的数据字典和真实数据是分开存放的,不同的数据分别放在 不同的表空间,而且基表(存储系统参数信息)是加密存储,任何人都 无法访问。只能通过用户可视视图查看。 1.ORACLE中容错类型有三种,分别是预定义错误、非预定义错误、用 户自定义,其中在自定义错误中SQLCODE 错误号、SQLERRM错误描述 是SQL Server没有的。 容错机制 2.Oracle提供了健全的错误机制,用户可以轻松的获得错误位置和错 误原因而加以修改。用户还可以自己定义所须的错误类型,用以检查 逻辑错误。 备份机制 ORACLE提供了7种备份机制,具有联机备份功能 Oracle的日志默认有3个,先写入1号日志,满了后再写入2号日志,2 号满了再写入3号日志,3号满了后Oracle将自动备分1号日志的内 容,然后清空后写入新的日志信息,且Oracle的日志有多路复用功 能,我们可以为日志创建多个镜像,把相同的日志信息同时写入多个 日志文件中,这样可以防止磁盘损坏造成的数据丢失。

Oracle与SQLServer的SQL语法差异总结

Oracle与SQLServer的SQL语法差异总结
Oracle与SQL Server应用差异对比分析
项目
Oracle 10g
SQLServer 2008
备注
存储过程格式
CREATEORREPLACEPROCEDURE存储过程名(参数列表) IS
Begin
---存储过程内容
End存储过程名;
CREATEPROCEDURE存储过程名(参数列表) AS
--存储过程内容
From person
2、流控制语句
流控制与表达式结构很相似,只是结果表达式换成语句块
Case表达式when匹配表达式then {语句块1} else {语句块2} end case;
Eg:
case v_name
when‘张三’then
v_number := 1;
when‘李四’then
v_number:=2;
Eg:
Set @result =‘abcd’
2、通过SQL语句赋值
Select变量=表达式from表
Eg:
Select @code=code,@name=name from sysc01 where id = 1000
语句结束符
SQL语句使用分号;作为语句的结束
SQL语句不需要加分号;作为结束符(加也可)
3、动态存储过程(带入、出参)
Eg:
DECLARE@resultVARCHAR(50);
DECLARE@sqlNVARCHAR(1000);
DECLARE@paraNVARCHAR(200);
SET@sql='p_test @code,@name,@result output'
SET@para='@code varchar(10),@name varchar(10),@result varchar(50) output'

SQL Server 和 Oracle 以及 MySQL 有哪些区别

SQL Server 和 Oracle 以及 MySQL 有哪些区别

孙文亮,笔下虽有千言,胸中实无一策糊涂、紫冰焰、张小枭Damon等人赞同SQL,在这里我理解成SQL Server。

三者是目前市场占有率最高(依安装量而非收入)的关系数据库,而且很有代表性。

排行第四的DB2(属IBM公司),与Oracle的定位和架构非常相似,就不赘述了。

第一,如果要说明三者的区别,首先就要从历史入手。

1.Oracle:中文译作甲骨文,这是一家传奇的公司,有一个传奇的大老板Larry Ellision。

Ellision 32岁还一事无成,读了三个大学,没得到一个学位文凭,换了十几家公司,老婆也离他而去。

开始创业时只有1200美元,却使得Oracle公司连续12年销售额每年翻一番。

Oracle成立于1977年,早期的理论基础,反而来自于一篇IBM的论文《A Relational Model of Data for Large Shared Data Banks》【1】。

作者CODD选取了关系代数的五种运算,并基于运算,架构了一种新型的数据存储模型。

基于这种模型,Oracle成为了一个非常典型的关系数据库。

因此也变的严谨、安全、高速、稳定,并且变的越来越庞大。

由于其诞生早、结构严谨、高可用、高性能等特点,使其在传统数据库应用中大杀四方,金融、通信、能源、运输、零售、制造等各个行业的大型公司基本都是用了Oracle,早些年的时候,世界500强几乎100%都是Oracle的用户。

2.MySQL :MySQL的最初的核心思想,主要是开源、简便易用。

其开发可追溯至1985年,而第一个内部发行版本诞生,已经是1995年。

到1998年,MySQL已经可以支持10中操作系统了,其中就包括win平台。

但依然问题多多,如不支持事务操作、子查询 、外键、存储过程和视图等功能。

下图是一个截止至2006年的数据库市场占有率【2】:图中可以看出,MySQL的爆发实际是在01、02年,尤其是02年发布的4.0 Beta版,正式选定InnoDB作为默认引擎,对事务处理能力及数据缓存能力有了极大的提高。

浅谈ORACLE与SQL SERVER的差异

浅谈ORACLE与SQL SERVER的差异

摘要ORACLE 和 SQL SERVER 是众多数据库的一分子。

在不同的关系型数据库管理系统(RDBMS)之间,存在很多差异,ORACLE和SQL SERVER都符合SQL-92标准的属性扩展。

从应用程序的开发人员的角度来看,ORACLE和SQL SERVER对数据进行管理方式没有太大的区别。

ORACLE和SQL SERVER之间的内部差异却是十分明显。

计算机系统和终端设备的功能、性能和使用方式千差成别,用户希望在现有设备的基础上,充分利用不同系统的各种资源,尽可能简单地完成一项工作,满足用户的要求,设计一个统一的系统接口,并通过这一接口与局部系统转换,实现各种资源的共享。

这种转换实际上是数据库语言转换,为了实现其转换,就必须进行数据库语言的比较。

ORACLE公司的ORACLE和Microsoft公司推出的SQL ERVER是当今流行的大型关系数据库管理系统,它们是建立在成熟而强大的关系模型基础上,可以很好的支持客户/服务器模型,系统具有功能强大,使用灵活和形式多样的特点,可以用于构造从小型的单用户系统到支持数千个并发用户的大型应用项目上。

本文针对ORACLE和SQL SERVER两种语言进行比较。

关键字:数据库,ORACLE,SQL SERVERAbstractOracle and Sql server are member of numerous database.In the relational database management system (RDBMS) between different, there are number of differences,Properties of Oracle and Sql server are in line with the SQL-92 standard extension.From the application developer's perspective, Oracle and Sql server is not much difference to carry on the management mode of data.Is very obvious to The internal differences between Oracle and Sql server Computer systems and terminal equipment function, performance and the use way thousands of poor into other,Users hope that on the basis of the existing equipment, make full use of various resources in different systems, as simple as possible to complete a task, to meet user requirements, design a unified system interface, and through this interface with the local system transformation, realize the sharing of various resources.This conversion is actually the database language conversion, in order to realize the conversion, the comparison must carry out the database language.Oracle and Microsoft's Sql server is a large scale relational database management system of popular.They are based on a mature and powerful relationship model based on server model, can be very good support customer / the system have the function strong, the use of flexible and diverse forms of characteristics, can be used for the large type application project is constructed from the single user system for small to support thousands of concurrent users.According to Oracle and Sql server the two language are compared.Key words:Database, Oracle,Sql server目录1 绪论 (4)1.1课题研究的背景 (4)2 ORACLE 与 SQL SERVER 的发展史 (6)2.1 ORACLE 与 SQL SERVER 的发展史 (6)2.1.1 ORACLE 的发展 (6)2.1.2 SQL SERVER 的发展 (9)3 ORACLE 与 SQL SERVER性能的比较 (12)3.1数据库操作平台的开放性 (12)3.2性能、价格比 (13)3.3工具软件 (13)3.4文件体系结构 (14)3.4.1 主要的文件体系结构 (14)3.4.2 ORACLE的文件体系结构 (15)3.5存储结构 (15)3.5.1 ORACLE基本表空间 (15)3.5.2 SQL SERVER基本数据库 (15)3.6 基于数据库安全的比较分析 (16)4 ORACLE 与 SQL SERVER 语言的比较 (17)4.1 数据类型的不同 (17)4.1.1 ORACLE 的数据类型 (17)4.1.2 SQL SERVER 的数据类型 (20)4.2 在ORACLE中没有默认约束的说法 (23)4.3 连接变量和字符串的方式不一样 (23)4.4 条件语句if......else......的语法不同 (23)4.5 case语句的语法不同 (24)4.6 触发器创建语法不同 (25)4.7 创建用户的方式不同 (27)4.8 存储过程不同 (29)5 ORACLE 与 SQL SERVER 事务处理的异同 (30)5.1 事务的特点 (30)5.2 事务的执行过程 (30)5.3 事务处理过程的锁定和并发性 (31)5.4 事务日志和自动恢复 (33)结论 (34)致谢 (35)参考文献 (36)1 绪论1.1课题研究的背景数据库系统(Data Base System,简称DBS)通常由软件、数据库和数据管理员组成。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

你肯定不知道的
oracle数据库和sqlserver的这些区别学习过数据库的小伙伴儿应该知道oracle数据库和sql server数据库,今天乔布简历小编就来告诉你这些你肯定不知道的oracle数据库和sql server的区别。

关键词:oracle数据库和sql server的区别
它们两者之间的区别主要体现在六大方面:
一是开放性。

1、SQL Server 只可在windows上运行,缺乏开放性,操作系统的稳定对数据库是非常重要的。

Windows9X系列产品比较偏重于桌面应用,NT server只是适合中、小型企业。

而且windows平台的安全性、可靠性和伸缩性都是非常有限的。

它不像unix那样久经考验,尤其是在处理大数据库。

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

二是可伸缩性、并行性。

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

2、Oracle 并行服务器通过使一组结点共享同一簇中的工作来扩展windownt的能力,提供高可用性和高伸缩性的簇的解决方案。

如果windowsNT不能满足需要,用户可以把数据库移到UNIX中。

Oracle的并行服务器对各种UNIX平台的集群机制都有着相当高的集成度。

三是性能。

1、SQL Server多用户时性能不佳。

2、Oracle性能最高,保持开放平台下的TPC-D和TPC-C的世界记录。

四是客户端支持及应用模式。

1、SQL Server C/S结构,只支持windows客户,可以用ADO、DAO、OLEDB、ODBC连接。

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

五是操作简便。

1、SQL Server 操作简单,但只有图形界面。

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

六是使用风险。

1、SQL server 完全重写的代码,经历了长期的测试,不断延迟,许多功能需要时间来证明。

并不十分兼容。

2、Oracle 长时间的开发经验,完全向下兼容。

得到广泛的应用。

完全没有风险。

在价格上ORACLE贵过SQLSRVER。

你肯定不知道的oracle数据库和sqlserver的这些区别
/knowledge/articles/56a731a20cf2dd45ced443f1。

相关文档
最新文档