Soalan:
Bagaimana anda boleh menetapkan dan mendapatkan nilai nol dalam lajur Integer nullable dengan kekangan menggunakan JDBC?
Latar Belakang:
Pertimbangkan jadual dengan lajur bernama PROTOKOL, yang boleh dibatalkan dan mempunyai kekangan yang mengehadkan nilainya kepada 1, 2 atau 3. Apabila cuba menetapkan atau mendapatkan nilai nol untuk lajur ini, anda mungkin menghadapi masalah dengan setInt dan getInt.
Penyelesaian:
Untuk menetapkan nilai nol kepada lajur Integer menggunakan JDBC, gunakan kaedah setNull bagi kelas PreparedStatement. Sintaks adalah seperti berikut:
pst.setNull(4, java.sql.Types.INTEGER);
Di sini, pst ialah contoh kelas PreparedStatement. Argumen pertama, 4, mewakili indeks lajur yang anda ingin tetapkan kepada null. Argumen kedua, java.sql.Types.INTEGER, menentukan jenis SQL lajur.
Kemas Kini Java 8:
Dalam Java 8, kelas Types mempunyai telah dialihkan ke pakej java.sql, jadi sintaks yang dikemas kini untuk menetapkan nilai nol ialah:
pst.setNull(4, java.sql.Types.INTEGER);
Mendapatkan Nilai Null:
Untuk mendapatkan nilai nol daripada lajur Integer menggunakan JDBC, anda boleh menggunakan kaedah isNull bagi kelas ResultSet. Sintaksnya ialah:
if (rs.isNull("PROTOCOL")) { // Handle null value }
Di sini, rs ialah tika kelas ResultSet dan "PROTOKOL" ialah nama lajur yang ingin anda semak.
Atas ialah kandungan terperinci Bagaimana Mengendalikan Nilai NULL dalam Lajur Integer Terkekang menggunakan JDBC?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!