En Sqlite 3.6.0, quiero actualizar el registro si existe o insertarlo, pero recibo un error como
java.sql.SQLException: near "on": syntax error
mi consulta sql de la siguiente manera;
INSERT INTO tx (
_id,
amount,
fee,
prev_hash,
nonce,
action_time,
completion_time,
_from,
_to,
asset,
hash,
block,
seq,
[desc]
)
VALUES (
?,
?,
?,
?,
?,
?,
?,
?,
?,
?,
?,
?,
?,
?
)
ON CONFLICT (
_id
)
DO UPDATE SET amount = 1.0,
fee = 0.001,
prev_hash = 'e6d0ca4b71488972cb149eef427ffbeb6132449c045c88db89ddaa8ab0c3611f',
nonce = 1544773280,
action_time = 1544773276808,
completion_time = 1544773276808,
_from = 'SKK1P5eQqoN7FBKnughbvp3UBK2CyjRQhHBp',
_to = 'SKK1KuAwe4kR1SfdoXDiQStVtRPvdTVaKy2ry',
asset = 'SKK',
hash = '',
block = 100,
seq = 15288,
[desc] = 'denemee'
Y mi código se bloquea como sigue;
sql = "insert into tx (_id,amount,fee,prev_hash,nonce,action_time,completion_time,_from,_to,asset,hash,block,seq,desc) "
+ "values (?,?,?,?,?,?,?,?,?,?,?,?,?,?) on conflict (_id) do update set "
+ "amount =" + tx.amount + ",fee=" + tx.fee + ",prev_hash='" + tx.prev_hash
+ "'" + ",nonce=" + tx.nonce + ",action_time=" + tx.action_time
+ ",completion_time=" + tx.action_time + ",_from='" + tx.wallet + "'" + ",_to='"
+ tx.to + "'" + ",asset='" + tx.asset + "'" + ",hash=''" + ",block=100"
+ ",seq=" + tx.seq + ",desc='" + tx.desc + "'";
PreparedStatement pstmt = con.prepareStatement(sql);
pstmt.setString(1, tx._id);
pstmt.setString(2, String.valueOf(tx.amount));
pstmt.setString(3, String.valueOf(tx.fee));// fee
pstmt.setString(4, tx.prev_hash);// prev_hash
pstmt.setString(5, tx.nonce);// nonce
pstmt.setString(6, String.valueOf(tx.action_time));// action time
pstmt.setString(7, "");// completion_time
pstmt.setString(8, tx.wallet);// from
pstmt.setString(9, tx.to); // to
pstmt.setString(10, tx.asset);// asset
pstmt.setString(11, tx.hash);// hash
pstmt.setString(12, "");// block
pstmt.setInt(13, tx.seq);// seq
pstmt.setString(14, tx.desc);// desc
pstmt.executeUpdate();
la consulta en bruto funciona en sqlitestudio con éxito, pero recibo un error. Sé que sqlite versión 3.6.0 admite eventos upsert. ¿Dónde lo estoy haciendo mal? ¿Cómo puedo manejar este problema correctamente?
IDEA dijo que informa clases internas no estáticas. La compilación de tales clases provoca la creación de métodos ocultos y visibles en el paquete en la clase principal, lo que puede comprometer la seguridad. Así que quiero ...
Estoy tratando de agrupar algunos conjuntos en conjuntos disjuntos. Por ejemplo, si tengo estos 5 conjuntos: [[1, 3], [2], [1, 5], [6, 8], [1, 7]] Quiero tener este resultado: [[2] , [6, 8], [1, 3, 5, 7]] Aquí está el ...
Usando Pebble versión 3.0.6. Necesito verificar si el valor 'v' tiene una variable específica (traducido a Java: si Object v tiene una propiedad específica). Buscando algo como {% if v instanceof test.MyClass ...
Estoy haciendo una aplicación de escritorio en Java Swing usando la plataforma Netbeans. Quiero convertir una imagen en escala de grises de 16 bits en una imagen RGB. ¿Cómo puedo hacer eso?