旗下导航:搜·么
当前位置:网站首页 > MySQL教程 > 正文

sql和oracle的语法上有什么区别【MySQL教程】,sql语法,oracle语法

作者:搜教程发布时间:2019-12-01分类:MySQL教程浏览:50评论:0


导读:sql和oracle的语法区分有数据类型差别,取得当前体系时候的函数差别,在oracle没有默许束缚,衔接变量和字符串的体式格局不一样,case语句不一样等数据类型差别...
sql和oracle的语法区分有数据类型差别,取得当前体系时候的函数差别,在oracle没有默许束缚,衔接变量和字符串的体式格局不一样,case语句不一样等

数据类型差别

sql server的数据类型:int ,smallint ,char,varchar,nchar,nvarchar,ntext,datetime,smalldatetime,money,decima,float,bit

oracle 的数据类型:number(p,s),char,varchar2,Date,LOB

取得当前体系时候的函数差别

sql server:getdate()

oracle:sysdate

比方:设定日期花样的函数

to_char(sysdate,'yyy-mm-dd');

在oracle中没有默许束缚的说法

sql server 中增加默许束缚:

alter table talbe_name add DF_table_name default('男') for sex;

oracle 中增加默许值:

alter table table_name modify(sex default('男'));

衔接变量和字符串的体式格局不一样

sql server 中衔接:运用“+”衔接,比方:

print 'aaaa'+@name;

oracle 中衔接:运用“||”衔接,比方:

dbms_output.put_line('aaa'||name);//name为变量

oracle没有identity自动增进列,而是运用序列完成增进

sql server 自动增进:在表的主键列中可直接运用identity(1,1)完成增进

oracle 运用序列自动增进:

create sequence se_id 
start with 1
increment by 1

运用序列完成自动增进:se_id.nextval

前提语句if……else……的语法差别

sql server中:

  if 前提
            begin
              …………
            end
            else
            begin
              …………
            end

oracle中:

  if 前提1 then
               …………;
            elsif 前提2 then
               …………;
            else
              …………;
            end if;

case语句的语法差别

sql server中:

select ....case.....(else)....end....语句
            select stuno '学号',case
            when grade>=90 and grade<=100 then '★★★★'
            when grade>=80 and grade<90 then '★★★'
         when grade>=70 and grade<80 then '★★'
         when grade>=60 and grade<70  then '★'
            else '差'
            end as '品级' from score
            go

oracle中:

  declare
        nums number:=&nos;--&nos示意提醒传入值
            begin
              case nums
                when 100 then
                  dbms_output.put_line('满分也,不错');
                when 90 then
                  dbms_output.put_line('90分页很不错了');
                end case;
            end;

建立用户的体式格局差别

sql server中

建立上岸账号:sa-----123456

create Login 上岸称号 with password='上岸暗码'

修正上岸账户:

alter Login 上岸称号 with name='新登录称号' and password='新登录暗码'

禁用/启用上岸账号

alter Login 登录称号 disable(禁用)/enable(启用)

删除上岸账号

drop Login 登录称号

建立用户:

create user 用户名 for/from Login 上岸称号

修正用户名

alter user 用户名 with name='新用户名'

删除用户名

drop user 用户名

授权限

grant select/update/delete/insert on 表名 to 用户名

oracle中:

建立用户语法

create user 用户名
identified by 暗码
default tablespace users
temporary tablespace temp
quota 10M on users

修正暗码

alter user 用户名 identified by 新暗码

授与权限

grant create session to 用户名

删除用户

drop user 用户名 cascade;

以上就是sql和oracle的语法上有什么区分的细致内容,更多请关注ki4网别的相干文章!

标签:sql语法oracle语法


欢迎 发表评论: