重庆小潘seo博客

当前位置:首页 > 重庆网络营销 > 小潘杂谈 >

小潘杂谈

sql和oracle的语法上有什么区别

时间:2020-09-23 08:00:06 作者:重庆seo小潘 来源:
sql和oracle的语法区别有数据类型不同,获得当前系统时间的函数不同,在oracle没有默认约束,连接变量和字符串的方式不一样,case语句不一样等 数据类型不同 sql server的数据类型:int ,smallint ,char,varchar,nchar,nvarchar,ntext,datetime,smalldatetim

sql和oracle的语法上有什么区别

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 1increment by 1使用序列实现自动增长:se_id.nextval

条件语句if……else……的语法不同

sql server中:if 条件begin…………endelsebegin…………endoracle中:if 条件1 then…………;elsif 条件2 then…………;else…………;end if;case语句的语法不同

sql server中:select ....case.....(else)....end....语句select stuno '学号',casewhen 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<70then '★'else '差'end as '等级' from scoregooracle中:declarenums number:=&nos;--&nos表示提示传入值begincase numswhen 100 thendbms_output.put_line('满分也,不错');when 90 thendbms_output.put_line('90分页很不错了');end case;end;创建用户的方式不同

sql server中

创建登陆账号:sa-----123456create 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 userstemporary tablespace tempquota 10M on users修改密码alter user 用户名 identified by 新密码授予权限grant create session to 用户名删除用户drop user 用户名 cascade;以上就是sql和oracle的语法上有什么区别的详细内容,更多请关注小潘博客其它相关文章!