已阅读5页,还剩27页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Beginning SQL: Differences Between SQL Server and Oracle,Les Kopari Independent Consultant,A Quick Intro for SQL Server Users,Introduction,If youre new to SQL or just new to Oracle SQL, perhaps coming from a Microsoft SQL Server environment, it may seem like the two versions should be very similar, and they are, to a certain degree, but they are also very different in some important and basic ways.,Agenda,I. Quick Intro for SQL Server Users II. Some Detail: Joins, Subqueries, Deletes III. Certain Conceptual Differences IV. Powerful New Features V. Summary & References,Dont Use Databases,SQL Server,use mydatabase,Oracle,connect mydatabase/mypassword,Use Dual,Select Into,Inserts,Updates,SQL Server,update mytable set mycolumn=myothertable.mycolumn from mytable,myothertable where mytable.mycolumn like MY% and myothertable.myothercolumn=some text;,Updates,Oracle,update mytable set mycolumn= (select a.mycolumn from myothertable a where myothertable.myothercolumn=some text; ) where mytable.mycolumn like MY%;,Deletes,SQL Server,delete mytable where mycolumn like some%;,Oracle,delete from mytable where mycolumn like some%;,Software,isql,osql: for queries developed in SQL Analyzer,sqlplus,SQL Server,Oracle,II. A Little More Detail,Outer Join Sub-Queries in Place of Columns Deletes With a Second From Clause,Outer Join,SQL Server select d.deptname, e.ename from dept d, emp e where d.empno *= e.enum; Oracle select d.deptname,e.ename from dept d, emp e where d.empno = e.enum (+);,SubQueries in Place of Columns,SQL Server select distinct year, q1 = (select Amount amt FROM sales where Quarter=1 AND year = s.year), q2 = (SELECT Amount amt FROM sales where Quarter=2 AND year = s.year), q3 = (SELECT Amount amt FROM sales where Quarter=3 AND year = s.year), q4 = (SELECT Amount amt FROM sales where Quarter=4 AND year = s.year) from sales s;,SubQueries in Place of Columns,Oracle SELECT year, DECODE( quarter, 1, amount, 0 ) q1, DECODE( quarter, 2, amount, 0 ) q2, DECODE( quarter, 3, amount, 0 ) q3, DECODE( quarter, 4, amount, 0 ) q4 FROM sales s;,Delete with Second From Clause,SQL Server delete from products from products, product_deletes where products.a = product_deletes.a and products.b = product_deletes.b and product_deletes.c = d;,Delete with Second From Clause,Oracle delete from products where ( a, b ) in ( select a, b from product_deletes where c = d );,III. More Depth,The Connect Concept Other Conceptual Differences Data Type Differences Column Aliases Sub-Queries,The Connect Concept,SQL Server Multiple databases Oracle Single Database Multiple tablespaces, schemas, users,Other Conceptual Differences,SQL Server Database owner, DBO Group/Role Non-unique index T-SQL stored procedure Trigger Compex rule Column identity property,Oracle Schema Role Index PL/SQL procedure PL/SQL function BEFORE trigger After trigger Sequence,Only in Oracle,Clusters Packages Triggers for each row Synonyms Snapshots,Data Type Differences,SQL Server Oracle INTEGER NUMBER(10) SMALLINT NUMBER(6) TINYINT NUMBER(3) REAL FLOAT FLOAT FLOAT BIT NUMBER(1) VARCHAR(n) VARCHAR2(n) TEXT CLOB IMAGE BLOB BINARY(n) RAW(n) or BLOB,Data Type Differences,SQL Server Oracle VARBINARY RAW(n) or BLOB DATETIME DATE SMALL-DATETIME DATE MONEY NUMBER(19,4) NCHAR(n) CHAR(n*2) NVARCHAR(n) VARCHAR(n*2) SMALLMONEY NUMBER(10,4) TIMESTAMP NUMBER SYSNAME VARCHAR2(30), VARCHAR2(128),Time,SQL Server Datetime: 1/300th second Oracle Date: 1 second Timestamp: 1/100 millionth second,Column Aliases,SQL Server select a=deptid, b=deptname,c=empno from dept; Oracle select deptid a, deptname b, empno c from dept;,Sub-queries, again,SQL Server SELECT ename, deptname FROM emp, dept WHERE emp.enum = 10 AND(SELECT security_code FROM employee_security WHERE empno = emp.enum) = (SELECT security_code FROM security_master WHERE sec_level = dept.sec_level);,Sub-queries, again,Oracle SELECT empname, deptname FROM emp, dept WHERE emp.empno = 10 AND EXISTS (SELECT security_code FROM employee_security es WHERE es.empno = emp.empno AND es.security_code = (SELECT security_code FROM security_master WHERE sec_level = dept.sec_level);,Powerful New Features,Regular Expressions: Operators & Functions Operator: REGEXP_LIKE Functions: REGEXP_INSTR REGEXP_SUBSTR REGEXP_REPLACE,Regular Expressions,Select zip from zipcode where regexp_like (zip, :digit:);,Regular Expressions,SELECT REGEXP_INSTR(Joe Smith, 10045 Berry Lane, San Joseph, CA 91234-1234, :digit:5(-:digit:4)?$) AS starts_at FROM dual,Summary,This discussion has been an attempt at a light and lively introduction to the Oracle database world for those familiar with the Microsoft SQL Server database products. Much more in-depth examples are available in the references shown that follow, from which many of the examples were drawn and for which we can thank the authors involved. Welcome Aboard!,References,Oracle Migration Workbench Reference Guide for SQL Server and Sybase Adaptive Server Migrations, Release 9.2.0 for Microsoft Windows 98/2000/NT and M
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026东城入学父母面试题目及答案
- 2026法检面试题目及答案
- 2026翡翠鉴定师面试题及答案
- 信息技术服务流程与用户管理规范指南
- 能源行业项目工程师技术专家绩效评定表
- 2026共享服务面试题及答案
- 2026护理老年面试题及答案
- 山西省2026届高三压轴卷生物试卷含解析
- 传统文化璀璨文明:小学主题班会课件
- 招聘结果通知函示例(7篇)
- 第一章 预备知识(高效培优单元测试-强化卷)-北师大版高中数学必修第一册(解析版)
- 2025年车辆管理考试题库及答案
- DG-TJ 08-2246-2023 绿色建筑工程验收标准
- NBT 11194-2023 新能源基地送电配置新型储能规划技术导则
- 2025及未来5年中国美味汉堡市场调查、数据监测研究报告
- 2025比亚迪供应商审核自查表
- 教科版(2024)三年级上册科学全册教案
- 医院培训课件:《脑卒中的识别与急救》
- 小学科学课程标准教师考试理论部分参考试题及答案
- 护理中医技术临床应用与规范化管理
- 导热油锅炉管理制度
评论
0/150
提交评论