更改MySq中的日期格式

2024-06-28 20:09:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个大的Csv文件,我想批量加载到我的表。此csv文件的一列保留日期,但采用DD-MM-YYYY格式。当我将这个文件加载到我的表中时,它不接受它,因为MySQL日期格式只接受YYYY-MM-DD。我有什么方法可以在MySQL中更改它吗。我使用python创建表并将我的文件加载到表中,这对于这个问题并不重要实际上。如果这里有一个命令,请告诉我该把它放在哪里? 谢谢 这是完整的代码

import MySQLdb,os

path='data_files'
absPath = os.path.abspath(path)
print absPath


#connecting to the new database
conn = MySQLdb.connect(host='localhost',
                          user='root',
                          passwd='',
                          db='iens')

db_cursor = conn.cursor()

query = "LOAD DATA LOCAL INFILE '"+ absPath + "/recencies" +"' INTO TABLE iens.recensies FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\r\n' (restaurantID,Naam,Date,RecensieText) "

db_cursor.execute(query)

conn.commit()

Tags: 文件pathdbos格式mysqlconnquery
2条回答

MySQL Reference Manual :: Date and Time Functions请参阅STR_TO_DATE将字符串转换为日期。在

假设您的表有两列,分别名为column1column2,日期在column2中,这是CSV文件中的第二列:

LOAD DATA INFILE 'filename' (column1, @var1)
SET column2 = STR_TO_DATE(@var1, '%d-%m-%Y')

(column1, @var1)部分说:

  • CSV文件的第一列直接进入数据库列column1
  • CSV文件的第二列放入一个变量@var1

SET column2 =部分说:

  • 将数据库列column2设置为=符号后面的表达式中的任何值。在

相关问题 更多 >