Foros del Web » Programación para mayores de 30 ;) » Java »

¿Cómo insertar un DataRow en un DataSet?

Estas en el tema de ¿Cómo insertar un DataRow en un DataSet? en el foro de Java en Foros del Web. Buenas, Estoy intentando insertar una fila en un DataSet que esta vinculado a un JdbTable: // Declaración del objeto JdbTable JdbTable objjdbTable = new JdbTable(); ...
  #1 (permalink)  
Antiguo 24/04/2004, 09:46
 
Fecha de Ingreso: agosto-2003
Ubicación: Madrid
Mensajes: 82
Antigüedad: 21 años, 5 meses
Puntos: 0
¿Cómo insertar un DataRow en un DataSet?

Buenas,
Estoy intentando insertar una fila en un DataSet que esta vinculado a un JdbTable:

// Declaración del objeto JdbTable
JdbTable objjdbTable = new JdbTable();

// Declaración de la Query que me trae el valor que quiero meter en el DataRow
String sQuery = "SELECT Columna1 FROM Tabla";

// Declaración del QueryDataSet y ejecución de la Query (objConnection es de tipo Connection)
QueryDataSet objQueryDataSet = new QueryDataSet();
objQueryDataSet.setQuery(new QueryDescriptor(new Database(objConnection), sQuery));

// Asignación del objQueryDataSet al JdbTable
objjdbTable.setDataSet(objQueryDataSet);

// Declaración del objeto DataSet que voy a manejar y asignación al DataSet vinculado al JdbTable
DataSet objDataSet = objjdbTable.getDataSet();

// Declaración de un DataRow
DataRow objDataRow = new DataRow(objDataSet);

// Asigno valor al DataRow
objDataRow.setString("Columna1",”Hola”);

// Intento añadir el DataRow creado al DataSet y es aquí cuando me da el error
objDataSet.addRow(objDataRow);

El error es el siguiente:
"El DataSet no tiene identificadores de fila unívocos. Nota: En el caso de QueryDataSet hay que desactivar metaDataUpdate.IDFILEA en la propiedad MetaDataUpdate, además de asignar una columna a la propiedad RowId."

*** La conexión y la query están bien definidas y he comprobado que funcionan correctamente (de hecho si esto no fuera asi la línea en la que Asigno valor al DataRow daría un error, sino da error es que "Columna1" existe en el DataSet vinculado al JdbTable.

¿Alguien sabe como añadir esta fila?. He intentado desactivar las CONTRAINT del DataSet pero no he encontrado como y no se me ocurre otra cosa.
  #2 (permalink)  
Antiguo 26/04/2004, 11:59
 
Fecha de Ingreso: agosto-2003
Ubicación: Madrid
Mensajes: 82
Antigüedad: 21 años, 5 meses
Puntos: 0
¡Solucionado!
lo tenía delante de las narices, me lo decía el mensaje de error:
"El DataSet no tiene identificadores de fila unívocos. Nota: En el caso de QueryDataSet hay que desactivar metaDataUpdate.IDFILEA en la propiedad MetaDataUpdate, además de asignar una columna a la propiedad RowId."

y eso exactamente es lo que hay que hacer:
objQueryDataSet.setRowId("Columna1",true);

Si a alguien le ocurre pues ya sabe
  #3 (permalink)  
Antiguo 26/04/2004, 14:05
Avatar de goncafa  
Fecha de Ingreso: julio-2002
Ubicación: Santiago
Mensajes: 1.211
Antigüedad: 22 años, 6 meses
Puntos: 10
solo felicitarte por esto que muy pocos hacen, me refiero a que cuando preguntan algo aqui y nadie tiene respuesta, si en determinado momento logran allar solucion se la guardan y no la exponen, creo que el sentido del foro crece si al encontrar la respuesta que nadie pudo dar la expones aqui

Saludos
__________________
se despide hasta la proxima
Gonzalo Castillo
  #4 (permalink)  
Antiguo 04/05/2004, 12:47
 
Fecha de Ingreso: agosto-2003
Ubicación: Madrid
Mensajes: 82
Antigüedad: 21 años, 5 meses
Puntos: 0
¡¡¡AUPA TU!!!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:04.