Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

Modificar campos en tablas

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Bases de Datos
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: Modificar campos en tablas Responder citando

Hola a todos,

A ver si me podeis echar una mano que tengo un problemilla.

Necesito cambiar un campo de una tabla paradox puntualmente y dejarlo despues como estaba, me explico.

Tengo un campo de tipo autoincremental, el problema es que tengo que actualizar dos tablas y una de ellas es la que lleva la voz cantante en el tema de este codigo, si las dos tienen el campo autoincremental no se cuadran, despues de mucho pensar creo que la unica solucion es en el momento de actualizar a una de ellas convertir el campo en double o char o lo que sea, actualizar y despues volver a convertirlo en AutoIncremental que es como estaba.

Sabeis como se puede hacer?

Gracias por adelantado.

Un abrazo.

Carlos
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

He estado buscando y buscando y hay una sentencia SQL que lo resolveria es:

ALTER table mitabla modify micampo char(30)

El problema es que me da un error que dice que no entiende "modify"

Se os ocurre otra manera? se puede hacer crear otro campo y actualizarlo y todo eso, el problema es que las tablas son enormes y eso tardaria mucho, lo mas rapido seria poder modificar directamente el campo.

A ver si se os ocurre algo.

Un abrazo.

Carlos
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Cuando hablas de cambiar puntualmente un campo de una tabla, ¿te refieres a la definición o al contenido? Si es el contenido, personalmente utilizaría una tabla auxiliar y luego recargaría la original; la defines con un bucle for excepto el campo que no quieres.
_________________
Un saludo

Necesitamos tu ayuda: Envía AI al 27595 (Coste 1,20 euros + IVA)
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Deacuerdo, yo crearia de nuevo la tabla, la que lleva la voz cantante quedaria igual, y la otra la vuelves a crear con un campo numerico en lugar de auto, los datos los puedes trasbasar con una tabla auxiliar como bien dice Angel.
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Os cuento,

Las dos tablas ya existen y las dos tablas ya tienen datos, simplemente hay que actualizar datos de una a otra, por eso no puedo crearla en el momento por que ya esta creada.

Una posible solucion es crear un campo nuevo y luego borrar el anterior y renombrarlo pero el problema es el tamaño tan grande de la tabla, seria muy lento, por eso decia lo de poder cambiar el tipo de campo, actualizar los datos y depues volverlo a dejar como estaba.

El problema no esta en actualizar datos, esta en el tipo de campo, que tienen que ser un numero cuando en realidad es un autoincremental y por eso tengo problemas.

Un abrazo.

Carlos
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Carlos J. Fernandez escribió:
Una posible solucion es crear un campo nuevo y luego borrar el anterior y renombrarlo pero el problema es el tamaño tan grande de la tabla, seria muy lento, por eso decia lo de poder cambiar el tipo de campo, actualizar los datos y depues volverlo a dejar como estaba.

¡Caray! ¿Qué tipo de base de datos usas? ¿Cuántas filas tiene la tabla de salida?
_________________
Un saludo

Necesitamos tu ayuda: Envía AI al 27595 (Coste 1,20 euros + IVA)
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Son tablas paradox.

Y campos no se, un monton.

Un abrazo.

Carlos
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Campos, no; cuantos registros.
_________________
Un saludo

Necesitamos tu ayuda: Envía AI al 27595 (Coste 1,20 euros + IVA)
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Ahhh ok,

Pues no se, pero quizas andan por los 50 o 60 mil, aunque van creciendo cada dia, la historia es no tener que recrear la tabla, por el problema del tiempo que tarda.

Ademas de que no es una sola tabla, son al menos 20.

Un abrazo.

Carlos
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Buen, bien. Un problema similar lo he tenido yo con una tabla paradox con unos 85.000 registros y tardé como diez minutos en adaptarla, a base de querys de SQL.
_________________
Un saludo

Necesitamos tu ayuda: Envía AI al 27595 (Coste 1,20 euros + IVA)
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Ok,

El problema que tengo es que ese proceso debe hacerse cada dia o como mucho cada dos dias y de 20 tablas pues imaginate lo que pueden decir.

Voy a seguir dandole vueltas a ver que se me ocurre.

Ya te contare.

Un abrazo.

Carlos
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.