Pregunta

Tengo una base de datos simple y deseo actualizar un valor int. Al principio me hago una consulta y en contacto un conjunto de resultados (ResultSet :: sql). Para cada una de las entradas en el conjunto de resultados que quiero modificar un valor que está en una columna particular de una tabla, a continuación, escribir de nuevo a la base de datos / actualizar dicha entrada en esa fila.

No está claro para mí en base a la documentación de cómo hacer eso. Sigo viendo declaraciones "Insertar", junto con actualizaciones - pero no creo que esto es lo que quiero - quiero mantener la mayor parte de la fila de datos intactos -. Acaba de actualizar una columna

Puede alguien me punto a algunos ejemplos de código u otra referencia / recurso clara?

EDIT:

Por otra parte, ¿hay una manera de contar la base de datos para actualizar un campo en particular (fila / columna) para incrementar un valor int por algún valor?

EDIT:

Entonces, ¿cuál es la forma típica que la gente utiliza MySQL desde C ++? Utilizar la API de C o el MySQL ++? Creo que he elegido la API mal ...

¿Fue útil?

Solución

A partir de un análisis rápido de la documentación que aparece Conector / C ++ es una aplicación parcial de la API de Java JDBC para C ++. No he encontrado ninguna referencia a conjuntos de resultados actualizables por lo que esto podría no ser posible. En Java JDBC de la interfaz conjunto de resultados incluye soporte para actualizar la fila actual si la declaración fue creado con la concurrencia ResultSet.CONCUR_UPDATABLE.

Usted debe investigar si Conector / C ++ soporta conjuntos de resultados actualizables.

EDIT: Para actualizar una fila que tendrá que utilizar un PreparedStatement que contiene un UPDATE de SQL, y el método a continuación de la declaración executeUpdate (). Con este enfoque debe identificar el registro que será la actualización con una cláusula WHERE. Por ejemplo

update users set userName='John Doe' where userID=?

A continuación, debe crear un PreparedStatement, establecer el valor del parámetro, y luego executeUpdate ().

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top