欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

excel數據導入mysql里面中文亂碼

錢琪琛2年前14瀏覽0評論

在實際開發中,可能會遇到將Excel中的數據導入到MySQL中,但是在導入的過程中可能會遇到中文亂碼的問題。

這種情況很可能是由于MySQL默認編碼為latin1,而Excel中的編碼可能是UTF-8或者GBK,所以在導入時需要進行字符集轉換。

# 創建數據庫
CREATE DATABASE test CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
# 創建數據表
CREATE TABLE `test`.`students` (
`id` INT NOT NULL AUTO_INCREMENT,
`name` VARCHAR(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
`age` INT NOT NULL,
PRIMARY KEY (`id`)
) ENGINE = InnoDB CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
# 修改數據表編碼
ALTER TABLE `test`.`students` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

以上是在MySQL中創建數據庫和數據表,以及修改表的編碼的操作。接下來在導入數據時,使用Python中的pandas庫來處理Excel數據。

import pandas as pd
from sqlalchemy import create_engine
# 連接MySQL數據庫
engine = create_engine('mysql+pymysql://username:password@host:port/database')
# 讀取Excel中的數據
df = pd.read_excel('data.xlsx')
# 將DataFrame中的數據存入MySQL數據庫中
df.to_sql('students', con=engine, if_exists='replace', index=False)

在讀取Excel數據時,可以使用pandas庫的read_excel方法將數據讀取為DataFrame,然后使用DataFrame的to_sql方法將數據存入MySQL數據庫中。

在連接MySQL數據庫時,需要根據實際情況修改連接信息,在導入Excel數據時,需要注意將數據編碼轉換為utf-8或者utf8mb4編碼,以避免中文亂碼情況發生。