>  기사  >  데이터 베이스  >  MySQL과 Oracle 간의 단일 데이터 유형 비교

MySQL과 Oracle 간의 단일 데이터 유형 비교

黄舟
黄舟원래의
2017-01-17 11:44:261808검색

MySQL과 Oracle의 차이점 중 하나 데이터 유형

데이터 유형 번호 ORACLE MYSQL 설명

1 NUMBER int / DECIMAL DECIMAL은 NUMBER(10 , 2) 이러한 구조 INT는 정수 유형을 나타내는 NUMBER(10)입니다.

MYSQL에는 Tinyint Mediumint Bigint 등 다양한 유형의 int 유형이 있습니다. int 너비가 다릅니다

2 Varchar2 (n) varchar(n)

3 Date DATATIME 날짜 필드 처리

MYSQL 날짜 필드는 DATE와 TIME으로 구분되며, 연도, 월, 날짜를 포함하는 DATE만 있습니다. 일, 시, 분, 초 정보 사용 현재 데이터베이스의 시스템 시간은
SYSDATE이며, 초 단위로 정확하거나 문자열을 사용하여 날짜 함수 TO_DATE('2001-08-01', 'YYYY-MM)를 변환합니다. -DD') 년-월-일
24시간:분:초 형식은 YYYY-MM-DD HH24: MI:SS TO_DATE()이며 날짜 형식은 다양합니다
ORACLE을 참조할 수 있습니다. DOC. 날짜 필드는 문자열 함수로 변환됩니다. TO_CHAR('2001-08 -01','YYYY-MM-DD HH24:MI:SS')

날짜 필드의 계산은 매우 다릅니다. MYSQL은 DATE_FIELD_NAME을 사용하여 현재 시간으로부터 7일을 찾습니다.
>SUBDATE (NOW(), INTERVAL 7 DAY) ORACLE은
DATE_FIELD_NAME >SYSDATE - 7;

을 사용하여 현재 시간으로부터 7일을 찾습니다. MYSQL의 현재 시간 시간의 여러 함수는 다음과 같습니다: NOW() 함수는 DATETIME 필드에 직접 저장할 수 있는 `'YYYY-MM-DD HH:MM:SS' 형식으로 현재 날짜와 시간을 반환합니다. CURDATE()는 오늘 날짜를 'YYYY-MM-DD' 형식으로 반환하며, 이는 DATE 필드에 직접 저장할 수 있습니다. CURTIME()은 현재 시간을 'HH:MM:SS' 형식으로 반환하며, 이는 TIME 필드에 직접 저장할 수 있습니다. 예: insert
into tablename (fieldname) 값​​(now())

그리고 oracle의 현재 시간은 sysdate입니다.

4 INTEGER int / INTEGER INTEGER in Mysql은 다음과 같습니다. int

5 EXCEPTION SQLEXCEPTION <<2009001-eService-O2MG.doc>>의 2.5 MySQL 예외 처리를 참조하세요.

6 CONSTANT VARCHAR2(1) mysql Migrate에는 CONSTANT 키워드가 없습니다. ORACLE Arrive MYSQL에서는 모든 CONSTANT 상수를 변수로만 정의할 수 있습니다.

7 TYPE g_grp_cur IS REF CURSOR: 자세한 내용은 2.2 <<2009001-eService의 커서 처리를 참조하세요. -O2MG.doc>>

8 TYPE unpacklist_type IS TABLE OF VARCHAR2(2000) INDEX BY BINARY_INTEGER; 배열: mysql

에서 임시 테이블 처리를 사용하거나 해당 코드에 직접 논리를 작성합니다.

컬렉션의 각 값에 대해 해당 처리를 직접 수행합니다. 자세한 내용은 <<2009001-eService-O2MG.doc>>의 2.4 배열 처리를 참조하세요.

9 자동으로 시퀀스 증가 성장하는 데이터 유형 MYSQL에는 자동이 있습니다. 성장하는 데이터 유형의 경우 레코드를 삽입할 때 이 필드를 조작할 필요가 없으며 데이터 값을 자동으로 가져옵니다. ORACLE에는 자동 증가하는 데이터 유형이 없습니다. 레코드를 삽입할 때 일련 번호의 다음 값을 이 필드에 할당해야 합니다.

10 NULL NULL 널 문자 처리

MYSQL의 null이 아닌 필드에도 빈 내용이 있습니다. ORACLE은 null이 아닌 필드를 정의하고 빈 내용을 허용하지 않습니다. MYSQL의 NOT NULL에 따라 ORACLE 테이블 구조를 정의합니다.
데이터를 가져올 때 오류가 발생합니다. 따라서 데이터를 가져올 때 널 문자인지 판단해야 합니다. NULL이거나 널 문자인 경우 공백 문자열로 변경해야 합니다.

위 내용은 MySQL과 Oracle의 차이점 중 하나인 데이터 형식 내용입니다. 자세한 내용은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:MySQL의 row_format다음 기사:MySQL의 row_format