2010-01-18 2 views
14

데이터베이스 드라이버와 데이터베이스 언어의 차이점은 무엇입니까?데이터베이스 드라이버와 데이터베이스 언어 간의 차이점

+2

질문이 모호합니다. 모든 데이터베이스 버전 간의 모든 차이점 목록을 원하십니까? 아니면 운전자와 방언의 차이점을 알고 싶습니까? –

+0

드라이버와 방언 – user244634

+1

의 차이점이 있으며 위키피디아 또는 google 사용법을 몰랐습니까? –

답변

7

원래 질문 :

데이터베이스 드라이버 및 데이터베이스 방언의 차이는 무엇인가?

질문이 모호합니다. 여기 내 걸릴 것입니다.

driver은 데이터베이스에 액세스하기위한 소프트웨어입니다.

dialect은 데이터베이스에 액세스하는 데 사용되는 쿼리 언어 (즉, 프로토콜)의 변형입니다. 데이터베이스 소프트웨어에 따라 복수의 dialects을 지원할 수도 있습니다.

e.e. 모두 sql은 같음 ;-)으로 작성됩니다.

8

데이터베이스 드라이버는 데이터베이스에 연결하기위한 프로토콜 (ODBC, JDBC)을 구현하는 프로그램입니다.

데이터베이스 사투리는 플랫폼 독립적 인 소프트웨어 (JPA, Hibernate 등)의 구성 설정으로 해당 소프트웨어가 프린터 드라이버를 번역 할 수 있도록합니다. 일반 SQL 문을 공급 업체별 DDL, DML로 변환합니다.

"데이터베이스 언어"는 다른 유형의 데이터베이스 프로그램에서 방금 작성한 것과 약간 다른 내용을 의미하는 것으로 보입니다. 즉, "데이터베이스 드라이버"는 하나의 구체적인 의미가있는 인정 된 산업 용어이지만 "데이터베이스 방언"은 유사하게 인식되지 않으므로 다른 컨텍스트의 다른 개념을 나타냅니다.

4

이 질문은 모호하지 않습니다. 정확하게 대답해야한다고 생각합니다.

특정 응용 프로그램을 특정 데이터베이스 관리 시스템과 연결하기 위해 종종 Dialect and Drivers를 사용합니다.

예를 들어

: Grails의에서/자바 우리는 방언의 속성을 정의

types

MySQL5Dialect, MySQLInnoDBDialect, MySQLMyISAMDialect 

방언 중 하나를 필요로 MySQL에 연결하는 것은 언어의 변형을 의미 영어 단어 . 예를 들어 영어의 여러 방언이 있습니다. 예 : 영국식 영어 및 미국식 영어.

데이터베이스의 맥락에서 사람들은 SQL의 방언에 대해 이야기합니다. SQL은 영어와 마찬가지로 주요 언어입니다. 그런 다음 데이터베이스 고유 구문을 사용하는 방언이 있습니다. 예를 들어, Oracle에는 rownum 키워드가 있습니다. Refe

그리고 데이터베이스 언어는 해당 데이터베이스에 액세스 할 때 사용할 수있는 SQL 언어의 특정 기능을 정의하는 용어입니다.

Example of usage in application side 

dataSource { 
    pooled = true 
    jmxExport = true 
    driverClassName = "com.mysql.jdbc.Driver" 
    dialect = "org.hibernate.dialect.MySQL5InnoDBDialect" 
    username = "root" 
    password = "root" 
} 

N.B. 방언은 데이터베이스에 연결하기위한 필수 항목입니다.

다른 Hand DataBase Driver는 해당 시스템의 프로그램이 DBMS와 상호 작용할 수 있도록 워크 스테이션이나 서버에 설치된 프로그램입니다. [Refer]

자바에는 관계형 데이터베이스에 연결하기위한 JDBC/ODBC 드라이버 사양이라는 것이 있습니다.

드라이버은 실제 데이터베이스와 소비 응용 프로그램 (Mysql 및 Java 응용 프로그램) 간의 통신을 처리하기 위해 작성된 파일 또는 클래스 파일과 유사합니다.

MySQL을은 lib 폴더에 배치하면 드라이버 파일이 산업 표준 ODBC 및 JDBC.After와 호환되는 응용 프로그램 및 도구와 MySQL을 사용하기위한 표준 데이터베이스 드라이버 연결을 제공하고 당신은 전화 또는 연결해야 데이터베이스에 연결하려면 URL, DATABASENAME, PORT, PASSWORD 등을 지정해야합니다.

dataSource { 

    //url = "jdbc:h2:mem:devDb;MVCC=TRUE;LOCK_TIMEOUT 
       =10000;DB_CLOSE_ON_EXIT=FALSE" 
     databasename = "libdoc" 
     url = "jdbc:mysql://localhost:3306/"+databasename 
    } 

알로하, 해피 러닝 데이!

관련 문제