Check if a table column can have a null value or not in Java
Description
The following code shows how to check if a table column can have a null value or not.
Example
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Statement;
//from w w w . jav a2 s .c om
public class Main {
public static void main(String[] args) throws Exception {
Connection connection = getConnection();
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery("SELECT id, username FROM users");
ResultSetMetaData metadata = resultSet.getMetaData();
int nullability = metadata.isNullable(1);
if (nullability == ResultSetMetaData.columnNullable) {
System.out.println("Columns ID can have a null value");
} else if (nullability == ResultSetMetaData.columnNoNulls) {
System.out.println("Columns ID does not allowed to have a null value");
} else if (nullability == ResultSetMetaData.columnNullableUnknown) {
System.out.println("Nullability unknown");
}
}
private static Connection getConnection() throws Exception {
Class.forName("org.hsqldb.jdbcDriver");
String url = "jdbc:hsqldb:mem:data/tutorial";
return DriverManager.getConnection(url, "sa", "");
}
}