0
java에서 MySql create table 문을 작성하려고합니다. 그러나 내가 직면하고있는 도전은 내 테이블의 열 이름이 사용자가 입력 한 문자열 배열에 저장된다는 것입니다. 직선 앞으로 열 이름을 알고 있지만 이번에는 내가 문자열 배열에서받은 데이터를 기반으로 즉석에서 테이블을 만들려고 할 때Java에서 테이블 정의를 동적으로 만드는 방법은 무엇입니까?
동적으로 테이블 문을 만들려면 어떻게 추가합니까? ? 어떤 도움말/팁?
아래의 작성 테이블은 정적 테이블입니다.
static String[] StopNamesForDB;
Set<String> set = new LinkedHashSet<String>(StopNames);
StopNamesForDB = new String[set.size()];
for (String string : set) {
StopNamesForDB[i] = string;
i++;
}
String sql = "CREATE TABLE Route3 "+
"(id INTEGER not NULL, " +
" first VARCHAR(255), " +
" last VARCHAR(255), " +
" age INTEGER, " +
" PRIMARY KEY (id))";
stmt.executeUpdate(sql);
당신은 테이블을 생성하고 열을 알고있을 때 당신은 나중에 변경할 수 있습니다. – Peshal
열 이름이 문자열 배열에 포함되어 있다고 가정합니다. 열 데이터 유형은 어떻습니까? 모두 동일합니까 (예 : varchar())? 정적 예제에서 기본 키와 필수 NOT NULL 제약 조건을 포함합니다. 만들려는 동적 테이블에서 모든 열을 null로 지정할 수 있습니까? 기본 키가 있습니까? 기본 키는 사용자가 정의 할 수 있습니까 (아니면 단순한 int입니까?)? 이 질문에 대한 대답을 통해 동적으로 테이블을 만드는 코드를 만드는 방법이 결정됩니다. – MichaelMilom