Mysql
 sql >> Database >  >> RDS >> Mysql

JDBC, MySQL:ottenere bit in una colonna BIT(M!=1).

Per impostare un BIT(M) colonna in MySQL

Per M==1

setBoolean(int parameterIndex, boolean x)

Dal javadoc

Per M>1

Il supporto per BIT(M) dove M!=1 è problematico con JDBC come BIT(M) è richiesto solo con SQL-92 "completo" e solo pochi DB lo supportano.

Controlla qui Mappatura di tipi SQL e Java:8.3 .3 BIT

Quanto segue funziona per me con MySQL (almeno con MySQL 5.0.45, Java 1.6 e MySQL Connector/J 5.0.8)

...
PreparedStatement insert = con.prepareStatement(
    "INSERT INTO bittable (bitcolumn) values (b?)"
);
insert.setString(1,"111000");
...

Questo utilizza la speciale sintassi b'110101010' di MySQL per impostare il valore per le colonne BIT.