MS SQL 스크립트를 Mysql 및 Oracle로 변환
제가 개발한 애플리케이션 중 하나가 고객 사이트에 로컬로 설치됩니다.이는 모든 고객이 동일한 데이터베이스 엔진을 사용하는 것은 아니기 때문에 MySQL, MSSQL 및 Oracle을 지원해야 한다는 것을 의미합니다.
애플리케이션에 대한 패치를 작성하고 있는데, 그 중 일부는 데이터베이스 수정을 위해 5000 라인 sql 스크립트를 실행하는 것을 포함합니다.스크립트는 MSSQL 구문을 사용하여 작성되지만 MSSQL 구문을 Oracle 및/또는 MySQL 구문으로 자동 변환하여 수동으로 수행할 필요가 없도록 하는 응용 프로그램이 있는지 궁금합니다.
Oracle로 변환하려면 마이그레이션 워크벤치를 사용해 보십시오.
이것은 오래된 주제이지만 http://www.sqlines.com/online 도구를 사용하는 것을 추천합니다.저는 그것을 사용하는 좋은 경험을 했습니다.3개월 전(사용을 시작한 시점)부터 문제가 없습니다.
또한 더욱 우려되는 것은 데이터베이스가 서로 다른 잠금 메커니즘을 지원하므로 테이블과 인덱스를 얻을 수 있지만, 자연 환경에 노출할 때 디버그/복제가 매우 어려운 몇 가지 문제를 소개할 수도 있다는 것입니다.
SQL Server, MySQL 및 Oracle에서 각각 한 명씩 해당 로트를 분류하려면 3명의 전문가가 필요합니다.또는 데이터베이스는 성능이 떨어지고 매우 평균적인 데이터베이스 메커니즘을 사용하여 최대 한 명의 사용자와 함께 실행되어야 합니다.
미안..
저는 데이터베이스 엔진 프로그래밍 구문 변환기를 모릅니다.하지만 다중 데이터베이스 플랫폼에서 작업을 하고 계시기 때문에 엔터프라이즈 라이브러리와 그 응용 프로그램 블록을 사용하는 것을 고려해 보겠습니다.이렇게 하면 두통을 덜 수 있어요, 저를 믿으세요!
아마도 출시될 제품에 대한 시간이 부족할 것으로 생각하기 때문에 수동으로 스크립트를 설정해야 할 것입니다. 그러나 자신에게 도움을 주고 Microsoft Enterprise Library를 사용하는 것을 고려해 보십시오.
다른 가능한 방법은 이 엔진들을 서로 최대한 가깝게 만들어서 세 개의 엔진과 더 편리하게 작업할 수 있도록 하는 것입니다.따라서 분석하고 어떤 기능을 어디에서 왜 만들어야 하는지 결정해야 합니다.이건 정말 힘든 일입니다.
제 경험으로는 엔터프라이즈 라이브러리, 적어도 DAAB(Data Application Block) 없이는 더 이상 개발할 수 없습니다.
여기 링크가 있습니다.
- http://www.microsoft.com/downloads/details.aspx?FamilyId=1643758B-2986-47F7-B529-3E41584B6CE5&displaylang=en
- http://www.codeplex.com/entlib
이게 도움이 됐는지 알려주세요.엔터프라이즈 라이브러리를 사용하여 데이터 액세스 계층을 설정하는 데 추가 지원이 필요하시면 말씀해 주십시오.
편집 2015.01.16
요즘의 또 다른 최선의 접근 방식은 하이버네이트, 엔티티 프레임워크 또는 이와 같은 다른 ORM 도구를 사용하는 것입니다.
SQL 스크립트를 사용하면 RDBMS 구성에 따라 더 이상 SQL 스크립트가 필요하지 않습니다.
애플리케이션에 대한 패치를 작성하고 있는데, 그 중 일부는 다음과 같이 실행됩니다.
5000
line sql 스크립트를 사용하여 데이터베이스를 수정합니다.스크립트는 다음을 사용하여 작성됩니다.MSSQL
syntax 하지만 자동으로 변환할 수 있는 어플리케이션이 있는지 궁금합니다.MSSQL
의 구문에 맞는Oracle
및/또는MySQL
수동으로 할 필요도 없이 말입니다
거의 불가능합니다.
의 공통 부분집합SQL
이 모든 시스템 지원은 거의 없습니다.
가지고 계시니까.5000
스크립트에 있는 코드 줄들, 아마도 이 부분집합에서 벗어나 있을 겁니다.
가장 나쁜 점은 보통 구문상의 차이뿐만 아니라 주요 개념적 차이라는 것입니다.
Oracle
, 예를 들어, 지지대MERGE
하나의 쿼리에 삽입, 삭제 및 업데이트를 허용하는 문입니다.둘 다 아니다.
SQL Server 2005
도 아니다MySQL
한 사람을 부양합니다.MySQL
여러 테이블에서 동시에 삭제 지원: 에서 사용할 수 없음Oracle
아니면SQL Server
.SQL Server
,와는 달리Oracle
그리고.MySQL
, can updateCTE
분석 기능을 사용하는 것입니다.
언급URL : https://stackoverflow.com/questions/1389759/convert-ms-sql-script-to-mysql-and-oracle
'programing' 카테고리의 다른 글
MySQL 스크립트 명령줄에 매개 변수 전달 (0) | 2023.10.17 |
---|---|
information_schema를 사용합니다.선택 검색에서 열 (0) | 2023.10.17 |
C 프로그래밍 언어용 UML (0) | 2023.10.17 |
도커 컨테이너에서 호스트에서 셸 스크립트를 실행하는 방법은 무엇입니까? (0) | 2023.10.17 |
카르마를 사용한 각도 테스트: "모듈이 정의되지 않았습니다." (0) | 2023.10.17 |