집 >데이터 베이스 >MySQL 튜토리얼 >SQL과 Oracle의 구문 차이점은 무엇입니까?
SQL과 Oracle의 구문 차이점은 다음과 같습니다. 1. 다양한 데이터 유형 2. 현재 시스템 시간을 얻는 다양한 기능 3. 다양한 사용자 생성 방법 5. 조건 "if...else..." 문의 구문은 다릅니다.
SQL과 Oracle의 구문 차이점에는 다양한 데이터 유형, 현재 시스템 시간을 가져오는 다양한 함수, Oracle의 기본 제약 조건 없음, 변수와 문자열을 연결하는 다양한 방법, 다양한 Case 문 등이 포함됩니다.
데이터 다양한 유형
SQL 서버 데이터 유형: 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');
in 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에는 ID 자동 증가 열이 없지만 시퀀스를 사용하여 성장을 달성합니다.
sql server automatic 성장: 테이블의 기본 키 열에서 성장을 달성하기 위해 ID(1,1)를 직접 사용합니다
oracle은 자동 성장을 위해 시퀀스를 사용합니다:
create sequence se_id start with 1 increment by 1
자동 성장을 달성하기 위해 시퀀스를 사용합니다: se_id.nextval
구문 if...else... 조건문이 다릅니다
sql 서버:
if 条件 begin ………… end else begin ………… end
oracle:
if 条件1 then …………; elsif 条件2 then …………; else …………; end if;
case 문의 구문이 다릅니다.
sql 서버:
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(启用)
Delete 로그인 계정
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의 구문 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!