2012-03-22 2 views
-1

저는 mySQL에서 SQLite로 전환 할 때 변환 도구 또는 변경 사항 목록을 찾고있었습니다. 그러나 변환 도구는 내가 아는 한 이미 존재하는 mySQL 데이터베이스를 SQLite 데이터베이스로 변환합니다.mySQL과 SQLite를 사용하여 데이터베이스를 생성하는 구문의 차이점이 있습니까?

나는 아직 mySQL 데이터베이스를 만들지 않았고, 나는 create 문만 가지고있다. 그렇다면 create 문을 변경하는 목록이나 mySQL create 문을 SQLite create 문으로 변경하는 변환기가 있습니까?

내 SQL은 다음과 같습니다

SET @[email protected]@UNIQUE_CHECKS, UNIQUE_CHECKS=0; 
SET @[email protected]@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0; 
SET @[email protected]@SQL_MODE, SQL_MODE='TRADITIONAL'; 

CREATE SCHEMA IF NOT EXISTS `pyMS` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci ; 
USE `pyMS` ; 

-- ----------------------------------------------------- 
-- Table `pyMS`.`msrun` 
-- ----------------------------------------------------- 
CREATE TABLE IF NOT EXISTS `pyMS`.`msrun` (
    `msrun_id` INT NOT NULL , 
    `description` VARCHAR(250) NOT NULL , 
    PRIMARY KEY (`msrun_id`)) 
ENGINE = InnoDB; 


-- ----------------------------------------------------- 
-- Table `pyMS`.`feature` 
-- ----------------------------------------------------- 
CREATE TABLE IF NOT EXISTS `pyMS`.`feature` (
    `feature_id` VARCHAR(40) NOT NULL , 
    `intensity` DOUBLE NOT NULL , 
    `overallquality` DOUBLE NOT NULL , 
    `quality` DOUBLE NOT NULL , 
    `charge` INT NOT NULL , 
    `content` VARCHAR(45) NOT NULL , 
    `msrun_msrun_id` INT NOT NULL , 
    PRIMARY KEY (`feature_id`, `msrun_msrun_id`) , 
    UNIQUE INDEX `id_UNIQUE` (`feature_id` ASC) , 
    INDEX `fk_feature_msrun1` (`msrun_msrun_id` ASC) , 
    CONSTRAINT `fk_feature_msrun1` 
    FOREIGN KEY (`msrun_msrun_id`) 
    REFERENCES `pyMS`.`msrun` (`msrun_id`) 
    ON DELETE NO ACTION 
    ON UPDATE NO ACTION) 
ENGINE = InnoDB; 
    [...] 

답변

1

난 당신이 같은 변경 사항 목록을 찾을 것 같아요 "A가 B로 교체". 당신이 할 수있는 일은이 마이그레이션 스크립트가하는 일을 살펴보고 자신의 목록을 작성하는 것입니다. 당신은 당신이 (문자열 교체 유닉스 명령이다 나오지도) 수행되고 있는지 확인할 수 있습니다 sed 's/ smallint([0-9]*)/integer /g' | 같은 명령을받을 경우

예를 들어,이 link

에 하나를 수행합니다.

스크립트를 살펴 보는 것만으로도 충분합니다.