Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menukar C# DateTime dengan betul kepada Format yyyy-MM-dd HH:mm:ss SQL?
Menukar Format DateTime kepada Format SQL dalam C#
Apabila menyimpan maklumat tarikh dan masa ke pangkalan data SQL menggunakan C#, adalah perlu untuk menukar kepada format SQL yang sesuai. Untuk ini, format "yyyy-MM-dd HH:mm:ss" digunakan secara meluas.
Untuk menangani keperluan ini, pertimbangkan coretan kod berikut:
DateTime myDateTime = DateTime.Now; string sqlFormattedDate = myDateTime.Date.ToString("yyyy-MM-dd HH:mm:ss");
Semasa ini menangkap komponen tarikh dengan tepat, komponen masa sentiasa ditetapkan kepada "12:00:00". Untuk membetulkannya, cuba kod yang dipertingkatkan:
string sqlFormattedDate = myDateTime.Date.ToString("yyyy-MM-dd") + " " + myDateTime.TimeOfDay.ToString("HH:mm:ss");
Walau bagaimanapun, ini mengakibatkan ralat masa kompilasi: "FormatException tidak dikendalikan". Isu ini berpunca daripada percubaan untuk memanggil kaedah Parse pada myDateTime, yang bukan operasi yang sah.
Untuk menyelesaikan masalah ini, cuma gantikan myDateTime.Parse.TimeOfDay dengan myDateTime.TimeOfDay dalam kod di atas. Ini membetulkan nama kaedah dan membenarkan komponen masa diformatkan dengan betul.
Sebagai alternatif, untuk mengelakkan isu ini sama sekali, anda boleh menggunakan kaedah ToString dengan satu rentetan format, seperti ditunjukkan di bawah:
string sqlFormattedDate = myDateTime.ToString("yyyy-MM-dd HH:mm:ss.fff");
Format ini termasuk cap masa sehingga milisaat, memastikan perwakilan yang tepat dalam pangkalan data SQL.
Atas ialah kandungan terperinci Bagaimana untuk Menukar C# DateTime dengan betul kepada Format yyyy-MM-dd HH:mm:ss SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!