MySQL JDBC Driver 5.1.33: Menangani Kebimbangan Zon Masa
Dalam peningkatan terkini pemacu MySQL JDBC daripada versi 5.1.23 kepada 5.1 .33, pengguna telah mengalami ralat yang tidak dijangka semasa memulakan aplikasi Java mereka. Ralat ini, yang mencadangkan nilai zon waktu 'UTC' yang tidak dikenali, telah membingungkan ramai pembangun.
Memahami Isu
Punca isu ini terletak pada pengenalan pengendalian zon waktu yang lebih ketat dalam pemandu JDBC yang lebih baharu. Sebelum ini, pemandu akan melaraskan zon waktu secara automatik kepada lalai sistem, tetapi amalan ini tidak lagi disokong dalam versi 5.1.33. Akibatnya, apabila menyambung ke pangkalan data dengan zon waktu bukan khusus seperti 'UTC,' pemandu tidak dapat mengenal pasti zon waktu yang sepadan dan membuat ralat.
Menyelesaikan Isu
Untuk menyelesaikan isu ini, pembangun mesti menyatakan secara eksplisit sifat serverTimezone dalam rentetan sambungan JDBC. Sifat ini mengatasi pengendalian zon waktu lalai dan membenarkan pemilihan zon waktu tertentu.
Melaksanakan Penyelesaian
Untuk menyelesaikan isu zon waktu dengan pemacu MySQL JDBC 5.1.33, ubah suai rentetan sambungan seperti berikut:
jdbc:mysql://localhost/db?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
Rentetan sambungan ini secara eksplisit menetapkan zon Waktu pelayan ke 'UTC,' memastikan pemandu mengendalikan pelarasan zon waktu dengan betul. Dengan menggabungkan pengubahsuaian ini, pembangun boleh mengatasi ralat dan mewujudkan sambungan yang berjaya ke pangkalan data MySQL mereka.
Atas ialah kandungan terperinci Mengapa Pemacu MySQL JDBC 5.1.33 Membuang Ralat Zon Waktu 'UTC', dan Bagaimana Saya Boleh Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!