Вы можете сделать это с помощью pymysql:
Например, давайте предположим, что у вас есть база данных MySQL со следующим пользователем, паролем, хостом и портом, и вы хотите, чтобы написать в «данные_2» баз данных.
import pymysql
user = 'root'
passw = 'my-secret-pw-for-mysql-12ud'
host = '172.17.0.2'
port = 3306
database = 'data_2'
Если у вас уже есть база данных создана:
conn = pymysql.connect(host=host,
port=port,
user=user,
passwd=passw,
db=database,
charset='utf8')
data.to_sql(name=database, con=conn, if_exists = 'replace', index=False, flavor = 'mysql')
Если вы не имеете базу данных, созданную, также действует, когда база данных уже есть:
conn = pymysql.connect(host=host, port=port, user=user, passwd=passw)
conn.cursor().execute("CREATE DATABASE IF NOT EXISTS {0} ".format(database))
conn = pymysql.connect(host=host,
port=port,
user=user,
passwd=passw,
db=database,
charset='utf8')
data.to_sql(name=database, con=conn, if_exists = 'replace', index=False, flavor = 'mysql')
Аналогичные темы:
- Writing to MySQL database with pandas using SQLAlchemy, to_sql
- How to insert pandas dataframe via mysqldb into database?
метод to_sql http://stackoverflow.com/a/16477603/2027457 или http://pandas.pydata.org/pandas-docs/stable/generated/pandas. DataFrame.to_sql.html – sb0709
Метод to_sql работает для меня. Однако имейте в виду, что это будет устаревать в пользу SQLAlchemy: FutureWarning: Примером «mysql» с подключением DBAPI является устаревшее и будет удалено в будущих версиях. MySQL будет поддерживаться с помощью подключаемых модулей SQLAlchemy. chunksize = chunksize, dtype = dtype) –
пока активен, поэтому до тех пор, пока он не будет устаревшим, чем потребуется некоторое время, и если вы не обновляете панды, а должны работать. отправляя ответ, чем. – sb0709