2011-09-23 4 views
0

CSV 파일에서 데이터를 읽고 데이터베이스에 삽입하는 Groovy 스크립트를 작성하고 있습니다. 고유 한 기본 키 또는 각 삽입에 대한 자동 증가를 생성하는 것을 제외하고는 모든 작업을 수행했습니다. 고유 한 키는 campusID입니다. 다음은 스크립트입니다.Groovy 스크립트를 사용하여 고유 한 키로 데이터베이스 항목을 삽입하십시오.

def sql = Sql.newInstance("jdbc:mysql://localhost:3306/mydb", 
     "xxxx", "xxxx", "com.mysql.jdbc.Driver") 
     def campus = sql.dataSet("CAMPUS") 



new File("C:\\test.csv").splitEachLine(",") {fields -> 
     campus.add(
      campusId: // Need to generate a unique key here 

      campusShortName: fields[1], 
      campusUrl: fields[2]) 

감사합니다.

답변

1

고유 키는 일반적으로 코드가 아니라 데이터베이스에서 처리합니다.

일부 데이터베이스 (예 : MySQL)는 자동 생성 필드를 null으로 설정할 수 있으며 일부는 자동으로 열을 제공하지 않아야합니다. 따라서 검색어에서 campusId을 삭제하거나 null으로 설정하고 열이 AUTO_INCREMENT column으로 설정되어 있는지 확인하십시오.

이 삽입 된 ID 필요한 경우, 정상적인 SQL 방법을 사용하여 더 나을 수있다 (예를 들어, 외래 키로 사용), 그것을 MySQL의에서 자동 증가를 설정 return value of the executeInsert method

+0

을 확인했다! 고마워. –

관련 문제