web-dev-qa-db-ja.com

MYSQL日時列に挿入する日時c#のフォーマット文字列

私はこのようなコードを持っています:

AutoParkDataDataContext Db = new AutoParkDataDataContext();
Dailyreport dailyRep = new Dailyreport();
string time = Convert.ToDateTime("10-10-2014 15:00:00");
dailyRep.order_time = time;
Db.Dailyreports.InsertOnSubmit(dailyRep);
Db.SubmitChanges();

DailyReportテーブルに表示されると、日付("10-10-2014 00:00:00:00")のみが表示されるため、時刻は無視されます。どうすれば修正できますか?列タイプはDateTimeです。

9
onik

MySQLに日付または日付時刻を挿入する迅速で簡単な方法は、「yyyy-MM-dd」という形式、または「yyyy-MM-dd H:mm:ss」のような日付時刻を使用することです。

これを試して

DateTime theDate = DateTime.Now;
theDate.ToString("yyyy-MM-dd H:mm:ss");

SQLを次のようにします。

insert into mytable (date_time_field) value ('2013-09-09 03:44:00');
23
Derrick

あなたのライン:

string time = Convert.ToDateTime("10-10-2014 15:00:00");

コンパイルしないでください。

SQLServerの列の型としてDateTimeがないことを推測できます。それを変更して、DateTimeを保持してから、文字列ではなくDateTime型オブジェクトを渡す必要があります。

2
user2711965

これは、データベースの基になるデータ型がDateでなければならないことを意味します。これをDateTimeに変更すると、時間も保存されます。

1
Mike Perrenoud
DateTime dateTimeVariable = DateTime.Now;
string date = dateTimeVariable.ToString("yyyy-MM-dd H:mm:ss");

Insertステートメントは次のようになります。

string InsertQuery   = "INSERT INTO table( `fieldName` ) VALUES ( '" + date + "' )";
0
jeleel