Как хранить байт из Java в байт в PostgreSQL?JAVA

Программисты JAVA общаются здесь
Anonymous
Как хранить байт из Java в байт в PostgreSQL?

Сообщение Anonymous »

Я получаю проблему, когда пытаюсь вставить переменную типа «байт» в Java в переменную типа «Bytea» в Postgresql. < /p>

Это моя таблица в PostgreSQL: < /p>

CREATE TABLE mesa (
id_mesa serial PRIMARY KEY,
tag varchar(50),
modelo varchar(50),
menor_complemento smallint NOT NULL,
peso_min smallint NOT NULL,
peso_max smallint NOT NULL,
som bytea NOT NULL,
rotina bytea NOT NULL,
address64bits bytea NOT NULL UNIQUE
);
< /code>

Мой код в Java - следующее: < /p>

private Mesa mesa;
//construtor
public MesaDAO (Mesa mesa) {
this.mesa = mesa;
}
(...)
String stm = "INSERT INTO mesa(tag, modelo, menor_complemento, peso_min, "
+ "peso_max, som, rotina, address64bits) "
+ "VALUES(?,?,?,?,?,?,?,?)";
try {
pst = con.prepareStatement(stm);
pst.setString(1, mesa.getTag());
pst.setString(2, mesa.getModelo());
pst.setInt(3, mesa.getMenorComplemento());
pst.setInt(4, mesa.getPesoMin());
pst.setInt(5, mesa.getPesoMax());
pst.setByte(6, mesa.getSom());
pst.setByte(7, mesa.getRotina());
pst.setBytes(8, mesa.getAddress64Bits());
pst.executeUpdate();
(...)
< /code>

Типы MESA: < /p>

public class Mesa{
private Integer idMesa;
private String tag;
private String modelo;
private Integer menorComplemento;
private Integer pesoMin;
private Integer pesoMax;
private byte som;
private byte rotina;
private byte[] address64Bits;
(...)
}
< /code>

Тогда, когда я пытаюсь вставить что -то, он бросает псаклексплекс, в котором говорится, что столбец «som» - это «байта», но выражение является «smallint» < /strong>. Я также думаю, что после этого будет одинаковое SQLException в следующих двух строках. Помогая мне, я предоставлю решение здесь: изменить переменную «som» и «rotina» на «byte []» тип, а затем используйте pst.getbytes (...) вместо pst.getbyte (...). < /p>

api api: < /p>

я использую xbee (API, так что для Searte. Поэтому я просто проверял, является ли то, что я получаю из базы данных, является тем же значением, которое я вставил там. В заключение я хочу знать, как восстановить байты из базы данных, чтобы отправить их через последовательный порт.

Подробнее здесь: https://stackoverflow.com/questions/212 ... postgresql

Вернуться в «JAVA»