Используйте это:
import pandas as pd
data = pd.read_csv(filename) # You can also add parameters such as header, sep, etc.
array = data.values
data
тип данных и использует значения для получения ndarray. Вы также можете получить список с помощью array.tolist()
.
Если вам все равно, какое значение будет в столбце auto_increment, тогда просто загрузите первый файл, переименуйте таблицу, затем заново создайте таблицу и загрузите второй файл. наконец, используйте
INSERT newly_created_table_name (all, columns, except, the, auto_increment, column)
SELECT all, columns, except, the, auto_increment, column
FROM renamed_table_name
Вы можете создать представление таблицы без столбца первичного ключа, а затем запустить mysqldump для этого представления.
Итак, если ваша таблица «users» имеет столбцы: id, name, email
> CREATE VIEW myView AS
SELECT name, email FROM users
Edit: ах, понятно, я не уверен, есть ли другой выход.
SELECT null as fake_pk, `col_2`, `col_3`, `col_4` INTO OUTFILE 'your_file'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'
FROM your_table;
LOAD DATA INFILE 'your_file' INTO TABLE your_table
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n';
Для дополнительной изящности, вы можете установить триггер перед вставкой в принимающей таблице, который устанавливает новый первичный ключ для строки охвата до того, как произойдет вставка, тем самым используя обычные дампы и все еще очищая ваш pk. Не проверял, но чувствую себя довольно уверенно.
Джими был на правильном пути.
Это одна из причин, почему клавиши автоинкремента являются питкой. Одним из растворов - не удалить данные, но добавить к нему.
CREATE VIEW myView AS
SELECT id*10+$x, name, email FROM users
(где $ x - однозначная цифра, однозначно идентифицирующая исходную базу данных), либо создавая представление в исходной базе данных (которую вы подсказуетесь, не можете быть возможным), либо используют рутину экстракта, как описанный самодержавием или загружать данные в постановку таблицы на тестовой коробке.
В качестве альтернативы, не создавайте таблицу в тестовой системе - вместо этого поместите в отдельные таблицы для данных SRC, затем создайте представление, которое вытесняет из них как:
CREATE VIEW users AS
(SELECT * FROM users_on_a) UNION (SELECT * FROM users_on_b)
c.
Используйте фиктивную временную первичную клавишу:
Использование Mysqldump
- OPTS -C
. Например, ваш основной ключ «ID».
Отредактируйте выходные файлы и добавьте строку «Dummy_id» в структуру вашей таблицы с тем же типом, что и «ID» (но не первичный ключ, конечно). Затем измените вставку instate
и замените «идентификатор» на «DUMY_ID». После импортированного, опустите столбец «Dummy_id».