私は新しいデータベースに移動するはずのデータベースを持っています。私の考えは、古いエントリをすべて読み込み、新しいフォーマットで変換して新しいデータベースに送るpythonスクリプトです。 問題は、日付(時刻)が別々に格納されていることです。古いDBには5つの列(年、月、日、時、分)がありますが、新しい列はdatetimeフィールド(YYYY-MM-DD hh:mm:ss)で動作します。mysql datetime-fieldのstrftime-objectを作成して挿入します
私はpythonでこのような何かをしようとした場合:
import time
t = time.mktime((2015,11,29,14,30,0,0*,246*,-1*)) # * not sure about these values
print time.strftime("%Y-%m-%d %H:%M:%S", time.gmtime(t))
私も予想以上に別の時間を取得:
2015-11-29 13:30:00
がどのように私は180Kエントリ右の日時書式のために取得することができますまたは多分これですすでにdatetimeフィールドに値を入力する間違った方法はありますか?
編集:私はこれをしようとした場合、私はこのエラーを
import MySQLdb
mysql_opts = {
'host': "123.45.67.89",
'user': "user",
'pass': "password",
'db': "db"}
t = time.mktime((2015, 11, 29, 14, 30, 0, 0, 0, 0))
date = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(t))
data = [date,...]
mysql = MySQLdb.connect(mysql_opts['host'],mysql_opts['user'],mysql_opts['pass'],mysql_opts['db'])
cursor = mysql.cursor()
cursor.execute("INSERT INTO table (date, ...) VALUES(%s,...)",(data[0],...))
mysql.commit()
mysql.close()
を取得しています:私は、エントリを追加する前に行うことを他の
TypeError: not all arguments converted during string formatting
は何がありますか? :S
、あなたが%の同じ番号を持っていないようですsをデータ数として –