当前位置:首页 » 编程语言 » oracle和sql的区别

oracle和sql的区别

发布时间: 2023-09-10 00:44:36

‘壹’ sql和oracle的区别

sql是查询语言,oracle是数据库
打个比喻:
SQL是出货凭证,判断那个东西要拿出来。
oracle是仓库,装着要拿出来的东西。
有可比性么?

‘贰’ mysql数据库的SQL语句和oracle的有什么区别详细点

区别如下:
1. Oracle是大型数据库而Mysql是中小型数据库,Oracle市场占有率达40%,Mysql只有20%左右,同时Mysql是开源的而Oracle价格非常高。
2. Oracle支持大并发,大访问量,是OLTP最好的工具。
3. 安装所用的空间差别也是很大的,Mysql安装完后才152M而Oracle有3G左右,且使用的时候Oracle占用特别大的内存空间和其他机器性能。
4.Oracle也Mysql操作上的一些区别
①主键
Mysql一般使用自动增长类型,在创建表时只要指定表的主键为auto increment,插入记录时,不需要再指定该记录的主键值,Mysql将自动增长;Oracle没有自动增长类型,主键一般使用的序列,插入记录时将序列号的下一个值付给该字段即可;只是ORM框架是只要是native主键生成策略即可。
②单引号的处理
MYSQL里可以用双引号包起字符串,ORACLE里只可以用单引号包起字符串。在插入和修改字符串前必须做单引号的替换:把所有出现的一个单引号替换成两个单引号。
③翻页的SQL语句的处理
MYSQL处理翻页的SQL语句比较简单,用LIMIT 开始位置, 记录个数;ORACLE处理翻页的SQL语句就比较繁琐了。每个结果集只有一个ROWNUM字段标明它的位置, 并且只能用ROWNUM<100, 不能用ROWNUM>80
④ 长字符串的处理
长字符串的处理ORACLE也有它特殊的地方。INSERT和UPDATE时最大可操作的字符串长度小于等于4000个单字节, 如果要插入更长的字符串, 请考虑字段用CLOB类型,方法借用ORACLE里自带的DBMS_LOB程序包。插入修改记录前一定要做进行非空和长度判断,不能为空的字段值和超出长度字段值都应该提出警告,返回上次操作。
⑤空字符的处理
MYSQL的非空字段也有空的内容,ORACLE里定义了非空字段就不容许有空的内容。按MYSQL的NOT NULL来定义ORACLE表结构, 导数据的时候会产生错误。因此导数据时要对空字符进行判断,如果为NULL或空字符,需要把它改成一个空格的字符串。
⑥字符串的模糊比较
MYSQL里用 字段名 like '%字符串%',ORACLE里也可以用 字段名 like '%字符串%' 但这种方法不能使用索引, 速度不快。

‘叁’ Oracle数据库与SQL Server数据库的区别是什么

都是大型关系型数据库,以前Oracle对海量数据的处理性能比SQL强,现在SQL2005应该在一些方面可以和Oracle向比美了,相对SQL便宜一些,Oracle使用到后面可能还需要购买一些插件

‘肆’ oracle数据库和sql server的区别

ORACLE与SQL SERVER的区别

ORACLE的文件体系结构为:

数据文件 .DBF (真实数据)

日志文件 .RDO

控制文件 .CTL

参数文件 .ORA

SQL SERVER的文件体系结构为:

.MDF (数据字典)

.NDF (数据文件)

.LDF (日志文件)


ORACLE存储结构:

在ORACLE里有两个块参数PCTFREE(填充因子)和PCTUSED(复用因子),可控制块确定块本身何时有,何时没有足够的空间接受新信息(对块的存储情况的分析机制)这样可降低数据行连接与行迁移的可能性。块的大小可设置(OLTP块和DSS块)

在ORACLE中,将连续的块组成区,可动态分配区(区的分配可以是等额的也可以是自增长的)可减少空间分配次数。

在ORACLEl里表可以分为多个段,段由多个区组成,每个段可指定分配在哪个表空间里(段的类型分为:数据段、索引段、回滚段、临时段、CASH段。ORACLE里还可对表进行分区,可按照用户定义的业务规则、条件或规范,物理的分开磁盘上的数据。

这样大大降低了磁盘争用的可能性。

ORACLE有七个基本表空间:

·SYSTEM表空间(存放数据字典和数据管理自身所需的信息)

·RBS回滚表空间

·TEMP临时表空间

·TOOLS交互式表空间

·USERS用户默认表空间

·INDX索引表空间

·DBSYS福数据表空间

不同的数据分别放在不同的表空间(数据字典与真实数据分开存放),在ORACLE里基表(存储系统参数信息)是加密存储,任何人都无法访问。只能通过用户可视视图查看。


SQL SERVER 存储结构

以页为最小分配单位,每个页为8K(不可控制,缺乏对页的存储情况的分析机制),

可将8个连续的页的组成一个‘扩展’,以进一步减少分配时所耗用的资源。(分配缺乏灵活性),在SQL SERVER里数据以表的方式存放,而表是存放在数据库里。

SQL SERVER有五个基本数据库:

·master(数据字典)

·mode(存放样版)

·tempdb(临时数据库)

·msdb(存放调度信息和日志信息)

·pubs(示例数据库)

真实数据与数据字典存放在一起。对系统参数信息无安全机制。

ORACLE登入管理:

·SYSTEM/MANAGER (初始帐户)

·SYS/CHANGE_ON_NSTALL

·INSTALL/ORACLE(安装帐户)

·SCOTT/TIGER(示例数据库,测试用)

在ORACLE里默认只有三个系统用户,ORACLE是通过用户登入。


SQL SERVER登入管理:

·SQL SERVER身份验证

·WINDOWS 身份验证

在SQL SERVER里是通过WINDOWS用户帐户或是用SQL SERVER身份验证连接数据库的。

SQL不是一种语言,而是对ORACLE数据库传输指令的一种方式。

SQL中NULL既不是字符也不是数字,它是缺省数据。ORACLE提供了NVL函数来解决。


ORACLE中的字符串连接为 string1‖string2 ,SQL中为string1+string2.

集合操作:在SQL中只有UNION(并操作),ORACLE中包含MINUS(差操作)、 INTERECT(交操作)、UNION(并操作)。


索引

SQL的索引分为聚集索引和非聚集索引,还包括全文索引;

ORACLE的索引包括:B+树索引,Bitmap位图索引,函数索引,反序索引,主键索引,散列索引,本地索引。

ORACLE的数据类型比较复杂,有基本数据类型,衍生型,列对象型,表对象型,结构体型;

SQL中的数据比较简单,只有一些简单的基本数据类型无法提供事务操作。

‘伍’ Oracle与sql server区别是什么

两种数据库sql语句通用,里面有些字段类型不一样;
Oracle比SQLServer消耗更多内存,因为Oracle每个数据库的服务都是分开的,SQLServer就一个服务可以放很多数据库;
Oracle比SQLServer安全性好,由此
Oracle比SQLServer复杂,比如导入导出数据库、权限管理、,Oracle操作都要多一点,不过都很好学的;
在中国,两样数据库都可以免费,想用那种数据库一切向客户看起;
建议要先学公司用的数据库。
主要看你是软件专业人士学习,还是业余了解一下?

‘陆’ mysql数据库的SQL语句和oracle的有什么区别详细点

首先是大体一致的,只是分页查询时oracle用的伪列(rownum),mysql用的是limit,具体的可以网络一下分页;
另外oracle对sql语句要求更为严格,而且oracle里变量较mysql更多点,oracle中有number型,有大数据类型,mysql没得;
另外举个例子,oracle不能插入为空列,而mysql是可以的(个人觉得,不知道正确与否)。还有他们两者函数有不同之处,如转日期函数oracle是to_date('要转的字符串','格式') -- select to_date('2004-05-07 13:23:44','yyyy-mm-dd hh24:mi:ss') from al,而mysql是str_to_date('08/09/2008', '%m/%d/%Y'); -- 2008-08-09//都是针对字符串转日期来的。
还有一点,我们常常希望主键可以自动增长,避免我们插入数据时的重复问题,但是oracle不能设置列自动增长,而mysql是可以的,oracle可以用序列加触发器来解决自动增长问题达到与mysql一样的效果。

总体来说百分之九十的sql语句是没区别的。总体来说oracle的格式严格点,对有些字符型的还必须加单引号才能插入,mysql要求就没这么多了。还有当向数据库插入一个日期时,mysql可以直接插入成功,但是oracle需要先转化为sql里面的日期类型才行;oracle较mysql而言更安全,但是收费的,一般大公司用的多。oracle还有存储过程和函数,触发器这些这是mysql没有的。大体就是这样吧。

热点内容
滑板鞋脚本视频 发布:2025-02-02 09:48:54 浏览:432
群晖怎么玩安卓模拟器 发布:2025-02-02 09:45:23 浏览:557
三星安卓12彩蛋怎么玩 发布:2025-02-02 09:44:39 浏览:743
电脑显示连接服务器错误 发布:2025-02-02 09:24:10 浏览:537
瑞芯微开发板编译 发布:2025-02-02 09:22:54 浏览:146
linux虚拟机用gcc编译时显示错误 发布:2025-02-02 09:14:01 浏览:235
java驼峰 发布:2025-02-02 09:13:26 浏览:651
魔兽脚本怎么用 发布:2025-02-02 09:10:28 浏览:538
linuxadobe 发布:2025-02-02 09:09:43 浏览:212
sql2000数据库连接 发布:2025-02-02 09:09:43 浏览:726