-2
我在Java類中有一個布爾值,並希望使用此狀態在Mysql數據庫中插入0或1狀態。當我從數據庫獲取數據時,它總是返回true [數據庫中的1]。如何根據布爾值在mysql中獲取0或1?
誰能告訴我如何根據布爾值得到0或1的數據庫。
boolean status= Boolean.parseBoolean(parameterStatus);
我在Java類中有一個布爾值,並希望使用此狀態在Mysql數據庫中插入0或1狀態。當我從數據庫獲取數據時,它總是返回true [數據庫中的1]。如何根據布爾值在mysql中獲取0或1?
誰能告訴我如何根據布爾值得到0或1的數據庫。
boolean status= Boolean.parseBoolean(parameterStatus);
這是不完全清楚你問什麼。我認爲你的意思是「爲什麼數據庫在執行查詢時總是返回1(對於true)?」。
這可能是因爲你總是插入1(真)。
下面是如何插入數據庫並獲取布爾值的示例。
try{
// create a mysql database connection
String myDriver = "org.gjt.mm.mysql.Driver";
String myUrl = "jdbc:mysql://localhost/test";
Class.forName(myDriver);
Connection conn = DriverManager.getConnection(myUrl, "root", "");
// create a sql date object so we can use it in our INSERT statement
Calendar calendar = Calendar.getInstance();
java.sql.Date startDate = new java.sql.Date(calendar.getTime().getTime());
// the mysql insert statement
String query = " insert into users (first_name, last_name, date_created, is_admin, num_points)"
+ " values (?, ?, ?, ?, ?)";
// create the mysql insert preparedstatement
PreparedStatement preparedStmt = conn.prepareStatement(query);
preparedStmt.setString (1, "Barney");
preparedStmt.setString (2, "Rubble");
preparedStmt.setDate (3, startDate);
preparedStmt.setBoolean(4, false);
preparedStmt.setInt (5, 5000);
// execute the preparedstatement
preparedStmt.execute();
//now to get the boolean from Database
Statement stmt=conn.createStatement();
ResultSet rs=stmt.executeQuery("select * from emp");
while(rs.next())
System.out.println(rs.getBoolean(4));
conn.close();
}catch(Exception e){
System.out.println(e);
}
'status'有什麼問題? 1:0' – user7294900
請確保選擇最佳答案 – develop1
謝謝@ user7294900它幫助 –