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

JDBC, MySQL:få bits ind i en BIT(M!=1) kolonne

For at indstille en BIT(M) kolonne i MySQL

For M==1

setBoolean(int parameterIndex, boolean x)

Fra javadoc

For M>1

Understøttelsen af ​​BIT(M) hvor M!=1 er problematisk med JDBC som BIT(M) er kun påkrævet med "fuld" SQL-92 og kun få DB'er understøtter det.

Tjek her Mapping SQL og Java-typer:8.3 .3 BIT

Følgende fungerer for mig med MySQL (i det mindste med MySQL 5.0.45, Java 1.6 og MySQL Connector/J 5.0.8)

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

Dette bruger den specielle b'110101010'-syntaks for MySQL til at indstille værdien for BIT-kolonner.



  1. 2 måder at slette duplikerede rækker i SQLite

  2. Sådan fjerner du kolonneoverskrifterne, når du sender forespørgselsresultater via e-mail i SQL Server (T-SQL)

  3. hvordan man støber hexadecimalen til varchar (datetime)?

  4. Forstå SUM(NULL) i MySQL