Próbuję załadować plik danych do tabeli mysql przy użyciu "LOAD DATA LOILAL INFILE" filename "INTO TABLE" tablename "".mysql LOAD DATA INFILE z automatycznie kluczowym kluczem podstawowym
Problem polega na tym, że plik danych źródłowych zawiera dane wszystkich pól, ale brakuje klucza podstawowego (kolumna "identyfikator"). Dodaję unikatowe pole id podczas tworzenia bazy danych, ale teraz muszę zaimportować dane do tabeli, poczynając od następnego pola i automatycznie zwiększając pole id podczas importowania.
def create_table():
cursor.execute ("""
CREATE TABLE variants
(
id integer(10) auto_increment primary key,
study_no CHAR(40),
other fields.....
)
""")
tu jest mój kwerendy LOAD
query1= "LOAD DATA LOCAL INFILE '"+currentFile+"' INTO TABLE variants FIELDS TERMINATED BY '\\t' LINES TERMINATED BY '\\n'"
jakieś pomysły?
Podsumowanie: utworzyć tabelę z dodatkowym polu id że auto przyrost ładowania danych (20 kolumn) do tabeli z 21 pola omijając pole id Lot pole id automatycznie wypełniać z indeksem automatycznego przyrostu.
czy istnieje prosty sposób wyświetlania wszystkich 20 nazw kolumn, może być jak notacja listy [1:]? Czy muszę wpisać nazwę każdej kolumny, np. Study_no, family_no itp.? dzięki – biomed
lista kolumn musi znajdować się na samym końcu, a kolumna id musi mieć wartość = null, aby była automatycznie zwiększana – biomed
Aby dodać nazwy kolumn, powinieneś być w stanie: cursor.execute ("DESCRIBE tablename"); query = "LOAD DATA INFILE" data.txt "DO TABELI nazwa tabeli (% s)"% "," .join ([x [0] dla x in cursor.fetchall()] [1:]) – Aaron