2017-03-24 3 views
0

文字列と日付文字列(たとえば '2017-01-01')を含むMySQLテーブルにインポートする文字列配列があります。いくつかの日付はゼロ( '')で、MySQLはこれらを日付として認識しません。私は文字列配列を使用しているので、私はNULLを使用することはできません。日付に空の文字列値をMySQLにインポート

文字列値を使用してテーブルにゼロの日付値を渡すにはどうすればよいですか?テーブルの結果は、 '00 -00-0000'ではなくNULLでなければなりません。

ありがとうございます!

+1

のチェック値のための簡単な条件を追加します。両方のMySQLの型DATEとDATETIMEはnullにすることができますので、dateが ""の場合はnullを挿入し、次にnullをMysqlに挿入しますか? –

+0

申し訳ありませんもっと具体的にさせてください。私は文字列配列からcsvファイルを作成し、そのCSVをMySQLにインポートしています。日付がcsvファイル内にある場合、MySQLはこれを日付として認識せず、エラーを出します。 – merlot

+0

私は言ったことを正確に意味します。私の新しい答えをチェックしてください。 –

答えて

0

私の経験によると、文字列が空であるかどうかをチェックし、Pythonスクリプトを使用して現在の日付を取得する必要があります。

import time 
## dd/mm/yyyy format 
cur_date = (time.strftime("%d/%m/%Y")) 
if str is in ['', None]: 
    str = cur_date 

MYSQLにインポートするだけで簡単にインポートできます。

1

ちょうど私が本当に問題がどこにあるか理解しない日付

date = some_date_from_cvs 

if date is not "": 
    mysql.insert(date) 
else: 
    mysql.insert(NULL) 
関連する問題