oracle与db2 市场占有率,oracle 与 DB2 的区别

1、DB2 访问前10行数据与Oracle区别

DB2 :

select * from test fetch first 10 rows only

Oracle :

select * from test where rownum<=10

查询语句

Db2:不提供隐形转换

select * from employee where empno=1010;

oracle:提供隐形转换

select * from employee where empno='1010';

2、DB2 Insert into 与Oracle区别

DB2 允许有类似这样多行插入:

insert into staff values(1212,'cemy',20,'sales',3,90000,30000);

(1212,'cemy',20,'sales',3,90000,30000);

oracle:

SQL>  insert into staff values(1212,'cemy',20,'sales',3,90000,30000),(1212,'cemy'

,20,'sales',3,90000,30000)

3、DB2 Update 与Oracle Update

Db2

DB2 update staff set (salary,comm)=(80000,50000);

DB2 update staff set salary=80000,comm=50000;

Oracle:

SQL> update staff set salary=80000,comm=50000;

已更新 1 行。I

4、取得系统日期

Oracle:

Select sysdate from dual;

DB2:

Select current timestamp from sysibm.sysdummy1;

5、转换日期时间到字符类型:

Oracle

TO_CHAR(date_expression_r_r, 'YYYY-MM-DD')

TO_CHAR(date_expression_r_r, 'HH24:MI:SS')

DB2

CHAR(date_expression_r_r,ISO)

CHAR(time_expression_r_r,ISO)

6、转换日期时间字符串到日期时间类型:

Oracle

TO_CHAR(date_expression_r_r, 'YYYY-MM-DD')

TO_CHAR(date_expression_r_r, 'HH24:MI:SS')

DB2

DATE('2005-05-20')

TIME('18:59:59')

TIEMSTAMP('2007-2-1', '21:12:12')

TIEMSTAMP('2007-2-1 21:12:12')

DB2也有TO_CHAR 和 TO_DATE函数,但只能提供固定的转换格式,如下

TO_CHAR (timestamp_expression_r_r,'YYY-MM-DD HH24:MI:SS')

TO_DATE (string_expression_r_r, 'YYY-MM-DD HH24:MI:SS')

7、快速清空大表

Oracle:

truncate table TableName ;

DB2:

alter table TableName active not logged initially with empty table;

8、创建类似表

Oracle:

create table a as select * from b ;

DB2:

create table a like b ;

9、修改字段长度或类型:

ORACLE:

ALTER TABLE NODES MODIFY NODE_NAME varchar(32);

DB2:

alter table NODES ALTER NODE_NAME SET DATA TYPE varchar(32);

10、空值处理得到abc

Oracle:

SELECT 'abc' || c1 FROM t1 (c1 IS NULL)

DB2 :

SELECT 'abc‘ || COALESCE(c1,'') FROM t1

11、创建 indexes

Oralce:

Create TABLE T1 .............IN DATA_TA

Create Index ........ ON T1  ...... IN INDX_TS

DB2:

Create TABLE T1 ........ IN DATA_TS INDEX IN INDX_TS

Create INDEX  .....ON T1

12、更改列名

oracle :

alter table test rename column mail to mail2;

db2

不提供更改列名功能(解决办法同删除,或者通过建立一个新视图解决)

13、更改列类型

oracle :alter table test modify column (mail2 integer);

db2    :alter table test alter mail varchar(256) 只可以加宽,不能更改类型

14 创建PROCEDURE的参数的区别

1)参数类型和参数名称的位置不同

db2:

CREATE PROCEDURE PRO1 (IN OrgID int)

oracle:

CREATE PROCEDURE PRO1 (OrgID IN int)

2)同时作为输入输出参数的写法不同

db2:

CREATE PROCEDURE PRO1 (INOUT OrgID int)    INOUT连着写

oracle:

CREATE PROCEDURE PRO1 (OrgID IN OUT int)    IN OUT中间空格隔开,而且必须IN在OUT之前

3)没有输入或输出参数时

db2:

CREATE PROCEDURE PRO1 ()

oracle:

CREATE PROCEDURE PRO1 不能有空的括号

变量定义和BEGIN END体的位置不同

db2中变量定义在BEGIN END体内,并且每个变量都要用DECLARE声明;存储过程结束时,END后跟P1,并且不需要分号

oracle中变量定义必须在BEGIN END体外,变量都不需要用DECLARE声明(有种说法是,第一个变量需要DECLARE,其他变量不需要);存储过程结束时,END后跟存储过程的名称,并且需要分号

db2:

CREATE PROCEDURE PRO1()

LANGUAGE SQL

P1: BEGIN

--变量定义

DECLARE INSERT_DATE TIMESTAMP;

DECLARE ALLDEPT_NO  VARCHAR(20);

--具体操作

SELECT a FROM TAB_1;

.........

END P1

oracle:

CREATE PROCEDURE PRO1

IS

--变量定义

INSERT_DATE TIMESTAMP;

ALLDEPT_NO  VARCHAR(20);

BEGIN

--具体操作

SELECT a FROM TAB_1;

.........

END PRO1;

15、控制语句的不同

db2:

IF …THEN ......ELSEIF THEN .... END IF;

oracle:

IF …THEN ......ELSIF  THEN .... END IF;

16、如何执行脚本SQL文件

Oracle:

@$PATH/filename.sql;

DB2:

db2 -tvf $PATH/filename.sql

17、查看当前用户的表和视图

DB2:

LIST   TABLES

ORACLE:

SELECT   *   FROM   TAB;

DB2:DROP   TABLE删除表和定义。LIST   TABLES发现表不存在了。

ORACLE:DROP   TABLE删除表的内容保留表的定义。可以看到表。

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

另外附上今天分享的东西:【快速复制表】

1.复制表结构及数据到新表

CREATE TABLE 新表 SELECT * FROM 旧表 (DB2不适用)

2.只复制表结构到新表

(1)oracle

CREATE TABLE 新表 SELECT * FROM 旧表 WHERE 1=2

即:让WHERE条件不成立.

(2)DB2

CREATE TABLE 新表 LIKE 旧表

3.复制旧表的数据到新表(假设两个表结构一样)

INSERT INTO 新表 SELECT * FROM 旧表

4.复制旧表的数据到新表(假设两个表结构不一样)

INSERT INTO 新表(字段1,字段2,.......) SELECT 字段1,字段2,...... FROM 旧表

世界上最远的距离是知与行的距离

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/523370.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

拒修电脑后,妹子又约我学机器学习,好烦(甜)!

事情是这样的&#xff0c;自前年给学妹修了半年电脑后&#xff0c;我俩一直没联系&#xff0c;最近这位学妹最近又联系我&#xff0c;问我是否了解人工智能&#xff0c; 在得知我已经研究并且从事相关工作后&#xff0c;她立马约我出来认真聊聊。我的内心&#xff1a;好烦啊&am…

gbase 8s oracle,GBase8s 查看数据库表空间信息

onstat -d 查看数据库表空间信息onstat -d命令用于检查数据库空间的使用情况[gbasedbtnode13 ~]$ onstat -dYour evaluation license will expire on 2021-08-27 00:00:00GBase Database Server Version 12.10.FC4G1TL -- On-Line (Prim) -- Up 00:16:02 -- 2023104 KbytesDbsp…

2019年普通高等程序员招生统一考试

戳蓝字“CSDN云计算”关注我们哦&#xff01;作者 | 表姐也有话讲来源 | 表哥有话讲2019年普通高等程序员招生统一考试题号一二三总得分一、选择题&#xff08;每题5分&#xff0c;共计50分&#xff09;1、SQL语句写了一天都没过&#xff0c;这个时候应该&#xff08;&#xff…

MybatisPlus_进阶

#数据库连接 spring:datasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/mp_high?userSSLfalse&characterEncondingUTF-8&serverTimezoneGMT%2B8username: rootpassword: root # 日志管理 logging:level:root: warncom.gblf…

php 内存队列,memcache构建简单的内存消息队列_PHP教程

本文章来给各位同学介绍使用memcache构建简单的内存消息队列,用一个比较不错的实例来给大家介绍&#xff0c;希望此方法对大家有帮助哦。memcache功能太简单了&#xff0c;只能 set get 和delete&#xff0c; 只能保存key-value的数据&#xff0c; 不能保存列表。 当然也可以把…

idea maven插件tomcat内存溢出

setting->>>Build,Execution->>>Deployment->>>Maven->>>Runner->>>VM Options 粘贴复制以下内容&#xff1a; -Xms1024M -Xmx2048M -XX:PermSize256M -XX:MaxNewSize256M -XX:MaxPermSize512m

搞不懂SDN?那是因为你没看这个小故事…

戳蓝字“CSDN云计算”关注我们哦&#xff01;作者 | 小枣君来源 | 鲜枣课堂很久很久以前&#xff0c;有一个村子&#xff0c;名叫“通信童心村”。村里的每一户&#xff0c;都有一个男人和一个女人。每一户&#xff0c;都以搬砖为生。从不同的地方&#xff0c;搬到不同的地方。…

lighttpd sqlite3 php,fedora linux平台下搭建lighttpd+php+sqlite

(一)lighttpd1. 安装yum install lighttpd安装完成后&#xff0c;系统中应该多了一个用户lighttpd和组lighttpd。这个用户&#xff0c;默认是不允许登陆的。我们修改/etc/passwd&#xff0c;将lighttpd修改为如下形式。lighttpd:x:489:470:lighttpd web server:/home/lighttpd/…

玩转 Linux 常用命令

Linux是目前应用最广泛的服务器操作系统&#xff0c;基于Unix&#xff0c;开源免费&#xff0c;由于系统的稳定性和安全性&#xff0c;市场占有率很高&#xff0c;几乎成为程序代码运行的最佳系统环境。linux不仅可以长时间的运行我们编写的程序代码&#xff0c;还可以安装在各…

良心帖!看完这篇,你的 Python 入门基础就差不多了!

Python将纳入高考内容、小学生教材开始接触Python、Python列入全国计算机等级考试……全民学Python的话题铺天盖地&#xff0c;中国的Python学习者是全球第一&#xff0c;人才如此泛滥&#xff0c;甚至以后孩子都会&#xff0c;学习它还能体现自身高价值&#xff1f;30年前学英…

svm回归matlab工具箱很慢,PSO优化SVM参数进行回归预测,结果很不理想

具体程序代码如下&#xff0c;主要问题就是不管我怎么调整参数&#xff0c;最终的预测结果都没有太大的变化&#xff0c;还请了解这两大算法的帮忙看看问题出在哪里了&#xff0c;十分感谢&#xff01;tic;close all;clear;clc;format compact;load M2.mat %载入数据% 提取数…

Idea 依赖冲突一分钟解决2种方案

文章目录一、Diagrams解决方案1.1. 在pom.xml文件中&#xff0c;右击选择【Diagrams】-【Show Dependencies】1.2. 找到冲突的依赖1.3. 问题定位1.4. 解决方案1.5. 具体实现思路1.5.1. 查看spring-context的全局控版本1.5.2. 找到需要排除activemq-core中的spring-context的3.0…

2019年技术盘点容器篇(一):听UCloud谈风生水起的K8S | 程序员硬核评测

戳蓝字“CSDN云计算”关注我们哦&#xff01;作者&#xff1a;刘晶晶据相关调研机构出具的报告数据显示&#xff0c;目前应用容器市场规模将从2016年的 7.62亿美元增长到2020年的27亿美元。显而易见&#xff0c;引入容器所展现的巨大灵活性有效推动了其采用速率&#xff0c;使企…

SpringBoot 整合ActiveMQ_企业实战

文章目录1. 新建Springboot工程2. 引入maven依赖3. ActiveMq配置类4. MQ生产者5. MQ 点对点消费者6. MQ 发布点阅消费者A7. MQ 发布点阅消费者B8. 统一测试类1. 新建Springboot工程 2. 引入maven依赖 <?xml version"1.0" encoding"UTF-8"?> <p…

怎样看Linux字体所在目录,Linux下列出所有字体的目录

fc-list|grep 黑/usr/share/fonts/adobe-source-han-sans/SourceHanSans-Bold.ttc: Source Han Sans HW TC,思源黑體 HW,思源黑體 HW Bold,Source Han Sans HW TC Bold:styleBold,Regular/usr/share/fonts/adobe-source-han-sans/SourceHanSans-Bold.ttc: 思源黑体,Source Han …

Docker精华问答 |为什么巨头会支持Docker?

如今Docker的使用已经非常普遍&#xff0c;特别在一线互联网公司。使用Docker技术可以帮助企业快速水平扩展服务&#xff0c;从而到达弹性部署业务的能力。在云服务概念兴起之后&#xff0c;Docker的使用场景和范围进一步发展。今天&#xff0c;就让我们来看看关于Docker的深度…

Unable to process Jar entry [module-info.class] from Jar

Unable to process Jar entry [module-info.class] from Jar [jar:file:/J:/rep/org/projectlombok/lombok/1.18.8/lombok-1.18.8.jar!/] for annotations org.apache.tomcat.util.bcel.classfile.ClassFormatException: Invalid byte tag in constant pool: 19 解决方案&…

linux的批处理进程,巧用linux-top的批处理模式

IT技术学习&#xff1a;一种是采用循序渐进的系统式学习&#xff1b;一种是采用“投机取巧”的碎片式学习。我这个人比较赖&#xff0c;也没有那些大牛执着的精神和水平&#xff0c;所以只能和大家分享后者命令简述top命令-是UNIN&&LINUX系统自带的系统管理工具。可以实…

最新突破!科学家研发出世界首款精神控制手臂机器人;近日Kubernetes 1.15 正式发布;雷军公布小米手机产品线布局……...

关注并标星星CSDN云计算极客头条&#xff1a;速递、最新、绝对有料。这里有企业新动、这里有业界要闻&#xff0c;打起十二分精神&#xff0c;紧跟fashion你可以的&#xff01;每周三次&#xff0c;打卡即read更快、更全了解泛云圈精彩newsgo go go 腾讯微信电子健康卡整体解决…