Если у меня есть входной файл, например:
US, P1, AgriZone, H, 1000, 1200, 1101, 1210
US, P2, ArgiZone, L, 120, 122, 345, 566
MX, Q4, FarmOne, H, 1120, 2200, 1111, 2345
И у меня есть следующие таблицы .
Таблицы вSQLFiddle
Моя проблема: Как правильно вставить эти записи в БД (учитывая, что одна строка попадает в несколько таблиц)?Как мне убедиться, что я добавляю только уникальные столбцы таблицы?Пример Agrizone
выше требует только одну запись в таблице Farm
?Каков типичный подход при такой вставке?
try
{
Class.forName("com.mysql.jdbc.Driver");
Connection con = (Connection) DriverManager.getConnection(
"jdbc:mysql://" + this.getServer() + "/" + this.getDatabase(),
user, password);
Statement s1 = (Statement) con.createStatement();
s1.executeUpdate("INSERT INTO" ??);
con.close();
}
Catch(Exception blah)
Как мне управлять вставкой такого типа, следя за тем, чтобы PK и FK были установлены правильно?
Большое спасибо сообществу stackoverflow!