estructura tabla access c#

20/09/2006 - 23:11 por Agustin | Informe spam
Hola, estoy haciendo una aplicacion con tablas de access que genero desde
codigo con create tabla..., hasta aqui bien, pero ahora tengo el problema
que quiero añadir campos segun voy necesitando, el problema es como
actualizar las tablas sin perder los datos desde codigo al iniciar la
aplicacion que detecte los cambios y actualize.

Gracias
Agustin

Preguntas similare

Leer las respuestas

#1 Alberto Poblacion
21/09/2006 - 07:50 | Informe spam
"Agustin" wrote in message
news:
Hola, estoy haciendo una aplicacion con tablas de access que genero desde
codigo con create tabla..., hasta aqui bien, pero ahora tengo el problema
que quiero añadir campos segun voy necesitando,



¿Has probado con la sentencia ALTER TABLE... ADD COLUMN...? Solo la he
probado contra Sql Server, pero creo que Access también lo admite.
Respuesta Responder a este mensaje
#2 Agustin
21/09/2006 - 09:01 | Informe spam
me refiero si hay alguna manera de diferenciar la estructura vieja con la
nueva
Gracias
Agustin

"Alberto Poblacion"
escribió en el mensaje news:
"Agustin" wrote in message
news:
Hola, estoy haciendo una aplicacion con tablas de access que genero desde
codigo con create tabla..., hasta aqui bien, pero ahora tengo el problema
que quiero añadir campos segun voy necesitando,



¿Has probado con la sentencia ALTER TABLE... ADD COLUMN...? Solo la he
probado contra Sql Server, pero creo que Access también lo admite.



Respuesta Responder a este mensaje
#3 Alberto Poblacion
21/09/2006 - 10:23 | Informe spam
"Agustin" wrote in message
news:%
me refiero si hay alguna manera de diferenciar la estructura vieja con la
nueva



No entiendo nada. ¿Qué quiere decir la estructura vieja y la nueva?
Entiendo que la tabla tiene una estructura en la base de datos y que lo que
quieres es añadirle una columna nueva. En ese caso, la diferencia entre la
estructura vieja y la nueva es la columna que acabas de añadir. O sino, ¿qué
es lo que quieres diferenciar? ¿dónde tienes esa "estructura nueva"?
Respuesta Responder a este mensaje
#4 Agustin
21/09/2006 - 14:16 | Informe spam
En una variable string donde con CREATE TABLE la genere al instalar el
programa ahora tengo que hacer actualizacion y tengo que modificar
estructuras añadir campos,etc..., como leer la estructura de la tabla vieja
y comparar con la estructura de la nueva version que la tengo en string, es
decir teniendo dos tablas leer la estructura y poder comparar para hacer los
cambios.
Gracias
"Alberto Poblacion"
escribió en el mensaje news:
"Agustin" wrote in message
news:%
me refiero si hay alguna manera de diferenciar la estructura vieja con la
nueva



No entiendo nada. ¿Qué quiere decir la estructura vieja y la nueva?
Entiendo que la tabla tiene una estructura en la base de datos y que lo
que quieres es añadirle una columna nueva. En ese caso, la diferencia
entre la estructura vieja y la nueva es la columna que acabas de añadir. O
sino, ¿qué es lo que quieres diferenciar? ¿dónde tienes esa "estructura
nueva"?



Respuesta Responder a este mensaje
#5 Alberto Poblacion
21/09/2006 - 15:51 | Informe spam
"Agustin" wrote in message
news:%
En una variable string donde con CREATE TABLE la genere al instalar el
programa ahora tengo que hacer actualizacion y tengo que modificar
estructuras añadir campos,etc..., como leer la estructura de la tabla
vieja
y comparar con la estructura de la nueva version que la tengo en string



Bien, si las estructuras están en un string, habría que comparar los
strings. Esto puede ser complejo en un caso genérico, ya que tendrías que
hacer un parser compatible con la sintaxis de esa sentencia de SQL. Pero en
este caso, si la sentencia la construyes tú y sabes que siempre la
construyes con el mismo formato y criterio, puedes trocearla por los
separadores que introduzcas entre campo y campo y luego separar los campos
de sus tipos, y tienes toda la información. Luego no tienes más que ir
recorriendo con un bucle los campos de la primera tabla y por cada campo,
buscarlo en la segunda tabla, y viceversa. Con eso sabes cuáles son los
nuevos, los antiguos y los modificados. Es pesado de hacer, pero no
complicado.

Otra cosa que podrías hacer es ejecutar la segunda sentencia con un
nombre de tabla temporal, para que se cree la nueva tabla en la base de
datos, y extraer sus características con conexion.GetOleDbSchemaTable(...).
Haces lo mismo con la antigua tabla y la nueva, y las comparas con un bucle
igual que en el caso anterior. Finalmente, borras la tabla temporal. Esto
evita tener que analizar el contenido del string.
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida