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 

Campo autonumerico

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: Campo autonumerico Responder citando

Hola, quiero crear un campo autonumerico, que ponga un numero por cada fila insertada en la base de datos, como puedo hacerlo?.
Muchas gracias.
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

¿Te imaginas cuantas bases de datos existen en el mercado? Shocked

Por favor se más específico y con gusto te ayudaremos.

¿De que base de datos hablas?

Saludos!
_________________
Quien hace una pregunta teme parecer un ignorante durante cinco minutos, quien no pregunta se mantiene ignorante toda la vida.
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: Re: Campo autonumerico Responder citando

Alexeu escribió:
Hola, quiero crear un campo autonumerico, que ponga un numero por cada fila insertada en la base de datos, como puedo hacerlo?.
Muchas gracias.


Usa el manual de referencia de TU MOTOR DE BASE de Datos crees que todos son iguales?

y de paso --> Como Formular una pregunta?

Te haria bien... primero leerlo, y pues bien no es Molestia, pero a partir de este dia 9 de Mayo he decidido NO y absolutamente NO contestar preguntas
que:

1.- No esten documentadas
2.- Sean Tareas Escolares.
3.- Sean Temas que han sido vistos miles y miles de veces por el foro.
y que no se tomen la molestia de "BUSCAR"
4.- sean cosas triviales como programacion de C++
5.- Que parezcan mensajes de texto de Cellular. ke en vez de Qué
6.- Que la persona solo sea "bob esponja" solo absorver y nada de aportar
7.- digan que han echo el punto 3 y que no encuentren nada.
8.- que este fuera de contexto a excepción que se marque como offtopic
9.- y si no vuelvo a contestar NUNCA es por que los Administradores del Foro me Sacaron (Roberto y _Leo) por hacer este mensaje (jeje)
10.- La mas Importánte, que el usuario NO se encuentre registrado.
_________________
Cool


Ultima edición por Cesar C. Salazar Gonzalez el Jue 10 May, 2007 6:17 am, editado 1 vez
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: De acuerdo con César Responder citando

100% de Acuerdo con César, pues no se vale que se PROSTITUYA este foro de esta manera pues su gran ayuda radica precisamente en OBTENER y APORTAR conocimiento útiles para la herramienta y no estar respondiendo trivialidades o resolviendo tareas las cuales el usuaio siquiera se molesta en buscar la mínimo, y para colmo ni siquiera saben PLANTEAR una pregunta jejejej, en fin ojalá y los administradores hicieran algo al respecto porque la mayoría de las preguntas que se postean dia a dia son demasiado triviales y ciclicas ya que se han respondido infinidad de veces aqui.

Salu2 y ojalá y todos tomaramos un poco de cociencia en este aspecto
_________________
ISC
Dobermannmx
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email Visitar sitio web del autor MSN Messenger
Mensaje    Asunto: Responder citando

Completamente de acuerdo con las observaciones de todos!

La idea es que cada vez vayamos avanzando en temas mas complejos e interesantes, y que no nos quedemos respondiendo las mismas pregunticas de siempre.

Alexeu, te voy a dar una idea para tu pregunta: i++;

Gracias a todos!
_________________
Dios es real... a menos que se declare entero!
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Re: Campo autonumerico Responder citando

Colegas, creo que nos estamos saliendo de contexto y no estamos siendo acertivos con los comentarios aquí escritos.

César C. Salazar González escribió:

Usa el manual de referencia de TU MOTOR DE BASE de Datos crees que todos son iguales?


César, esa no es una manera de contestar ante alguien que está tratando de resolver una duda.

César C. Salazar González escribió:

y de paso --> Como Formular una pregunta?


Mucho mejor. No olvidemos que la función de un foro es que los usuarios empiecen discusiones; otros usuarios pueden responder en las discusiones ya comenzadas o empezar unas nuevas según lo crean convenientes. Por lo que el EDUCARNOS a formulas las preguntas de una manera correcta enriquece el contenido del foro y hace más fácil la búsqueda.

César C. Salazar González escribió:

Te haria bien... primero leerlo, y pues bien no es Molestia, pero a partir de este dia 9 de Mayo he decidido NO y absolutamente NO contestar preguntas
que:

1.- No esten documentadas
2.- Sean Tareas Escolares.
3.- Sean Temas que han sido vistos miles y miles de veces por el foro.
y que no se tomen la molestia de "BUSCAR"
4.- sean cosas triviales como programacion de C++
5.- Que parezcan mensajes de texto de Cellular. ke en vez de Qué
6.- Que la persona solo sea "bob esponja" solo absorver y nada de aportar
7.- digan que han echo el punto 3 y que no encuentren nada.
8.- que este fuera de contesto a excepción que se marque como offtopic
9.- y si no vuelvo a contestar NUNCA es por que los Administradores del Foro me Sacaron (Roberto y _Leo) por hacer este mensaje (jeje)
10.- La mas Importánte, que el usuario NO se encuentre registrado.


César, nadie te obliga a contestar. No eres la única persona que lo puede hacer. Lo que si te puedo decir es que te has convertido en referencia para muchos de nosotros (me incluyo). A titulo personal creo que has tomado el liderazgo del foro debido a la ausencia de los moderadores y administradores (_Leo y Roberto), pero aún asi, si no quieres contestar estás en todo tu derecho de negarte. De cualquier forma muchos de los que estamos aqui coincidimos en que tu ayuda ha sido muy importante, como en su momento lo fue _Leo o Roberto cuando se daban mas vueltas por el foro. Como menciono más arriba "los usuarios pueden empezar discusiones; otros usuarios pueden responder en las discusiones ya comenzadas o empezar unas nuevas según lo crean convenientes".

Recuerda que el foro lo hacemos todos, y cada uno de los que aqui participamos tratamos de APRENDER o de APORTAR cuando lo creemos necesario o cuando consideramos que tenemos el conocimiento necesario para poder contestar una pregunta.


dobermannmx escribió:
, 100% de Acuerdo con César, pues no se vale que se PROSTITUYA este foro de esta manera pues su gran ayuda radica precisamente en OBTENER y APORTAR conocimiento útiles para la herramienta y no estar respondiendo trivialidades o resolviendo tareas las cuales el usuaio siquiera se molesta en buscar la mínimo, y para colmo ni siquiera saben PLANTEAR una pregunta jejejej
.

dobermannmx, de acuerdo con el hecho de que el usuario debe de esforzarce por tratar al menos de investigar algo sobre su problema, pero eso no significa que el mismo conozca lo que aqui hemos comentado tantas y tantas veces sobre el hecho de usar la opción buscar del foro o de aprender a formular una pregunta. Lo mismo que le comentó a César te comento a tí, tienes todo el derecho de negarte a responder si asi lo crees necesario o asi conviene a tus intereses.

jacko escribió:

La idea es que cada vez vayamos avanzando en temas mas complejos e interesantes, y que no nos quedemos respondiendo las mismas pregunticas de siempre.


No neceriamente es asi Jacko, no olvides cual es el objetivo del foro, no se trata de responder preguntas que sean solo complejas o importantes para ti o para un grupo de usuarios. Recuerda que no todos tenemos el mismo nivel de conocimientos, y que las cosas que para muchos de nosotros son obvias para otros no lo es asi.

jacko escribió:

Alexeu, te voy a dar una idea para tu pregunta: i++;


Al final, tu respuesta puede ser interpretada como una burla para quien formuló la pregunta. César hace mucho incapie en saber formular una pregunta, yo te puedo decir que debemos aprender a RESPONDER la misma y sobre todo a tener respeto por los demás.

Finalmente, Alexeu te recomiendo que leas el post que sugiere César y vuelvas a formular tu pregunta para que pueda ser contestada de manera satisfactoria.

Espero que más alla de que esto genere polémica, genere soluciones y mecanismos de comunicación que nos permitan interactuar con el resto de los usuarios.

Saludos a todos!
_________________
Quien hace una pregunta teme parecer un ignorante durante cinco minutos, quien no pregunta se mantiene ignorante toda la vida.
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: Responder citando

Esperemos mas aportaciones, a esta tema del Campo autonumerico, digo esto por que si han buscado en el foro, sabran que he dejado una respuesta que habla sobre la generacion de campos autonumericos e incrementables, usando interbase, lo de los 10 puntos arriba mencionados, efectivamente, decidí no hacerlo. pero no por que no se me de la gana contestar.

Este post del campo autonumerico esta desde el 12 de Abril, y la primera respuesta fue la de Buildero, indicando que base de datos es? y que mas documentación ha utilizado sin obtener respuesta; pero si hacemos cuentas, este post despues de el dia 9 de Mayo tiene aproximadamente 26 dias, que NADIE le ha puesto una respuesta satisfactoria, eso quiere decir, que las personas que son tan obias, para contestar no lo han echo imagino que por que no lo han considerado como parte fundamental.

Por otra parte una vez, en toda la historia desde que vi el foro, me ha llevado mas de 3 meses generar mi primer post despues de inscribirme, los 3 meses anteriores, me sirvieron de busqueda en cada uno de los posts, puedo decir sin alardear que he leido cada uno de los posts aqui contenidos y he visto la repetición de temas que por NO buscar, se siguen repitiendo. lo de hacer hincapié en generar o formular una buena pregunta, es por que en base al codigo aportado en un post, muchos, pueden identificar codigo que es similar, encontrar un error que es similar o encontrarse en situaciones iguales, claro todo ello usando la función Buscar del foro y por que no, juntarse de manera grupal, para desarrollar la solución, este es el post No. 6 que hace el comentario, sobre:

- preguntas, bien echas.
- sobre la escritura correcta de los post y no de mensajes de celulares.
- de plantear las preguntas en base a errores compilados en tiempo de diseño y en tiempo de ejecución, con numeros de errores que muchos hemos tenido.
- de que el foro, es eso un Foro, que pretende dar a concer las opciones de solucion donde mucha gente se ha atorado, no de gente, que sin tratar de teclear un solo código solo vengan a EXIGIR que se les conteste.

alguna vez, lo he comentado, se contesta con gusto, por qué? por que me gusta contestar y saber que se pueden solucionar problemas y que aparte NO se cobra por hacerlo ni me ha pasado por la cabeza cobrar como sucede en otros foros.

Buildero y todos los demas lo unico que se me ha metido en mente, es crear la concienza de seguir en un foro que realmente es una gran base de datos que tambien es parte de investigacion...

Como ejemplo pongo lo siguiente.
Supongamos que los que contestamos en el foro somos los encargados de la biblioteca mundial de c++ Builder (jeje se escucha muy fuerte), bien y que de repente llega una persona a preguntarnos por un tema.

Tema: Ayuuuuuudaaaa!!!!
- Necesito crear un sistema que de altas, bajas cambios y consultas, y lo necesito para mañana, como le puedo hacer?.

Qué responderias si fueras el encargado del la biblioteca de c++ Builder?

Cuando has notado lo siguiente:

1.- la persona no usa el clasificador de ficheros para encontrar su tema
2.- la persona te EXIGE que le contestes.
3.- la persona evita a toda costa realizar una búsqueda que de manera particular, Él y solo Él le interesa saber?
4.- la persona no la veras nunca mas por el foro.
5.- la persona quiere que TU le resuelvas el problema y no quiere participar en la solución del problema.

Entiendo perfectamente lo que se quiere decir, entiendo que tambien que mucha gente llega como nuevo al foro, entiendo tambien que el foro, no es de una sola region, ni pertenece a un universidad en particular (es internacional) y entiendo que este foro sigue vivo, por todas aquellas personas que realizan temas. lo unico que se pide, es sean conscientes para hacerlos; el por que de mi contestación arriba, alguien por ahi me dijo alguna vez

"En la manera de pedir, se encuentra el dar" Cool

bien ahora si me despido, y que nos digan que base de dato usan y que ha echo para trabajar en pro de la solucion, (mas facil usar la opcion BUSCAR del foro y listo, jeje)

y aclarado el tema por mi parte, a seguir colaborando... nunca he dicho que no lo hare, ni que dejaré de hacerlo, solo que omitiré los temas que no considere que sean dignos de responderse.

Saludos y como siempre en contacto...

por si sirve, jeje entro al foro cada 3 o 2 hrs, y reviso siempre los temas...
no soy Moderador, no soy Administrador, no intento hacerlo, solo soy un participante mas, que me gusta compartir mis ideas, con otras personas.

y cambiando de tema... mejor organizemos una reunion en todos los paises, en una cede donde se pueda ir, con gastos (propios jeje) y festejar los casi 5 años de existencia del foro. jeje para conocernos, bueno es un sueño. pero seria padre ver a todos y convivir un rato hablando de C++ Builder, aunque sea en paises individuales y si funciona entonces emigramos todos a España y lo hacemos masivamente con Roberto y _Leo, je jej
haber si ahora si Borland ya no nos deja tirados como lo hizo desde la salida del BCB60 hasta comienzo del BDS2006
_________________
Cool
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: Responder citando

Vale, ya nos hemos explayado todos y le hemos dado caña. De acuerdo en casi todos los comentarios que habéis indicado pero se puede contestar, ¿verdad?

Yo lo haría así:
Código:
Query->Close();
Query->UnPrepare();
Query->SQL->Text = "SELECT MAX(Campo) Ultimo FROM 'MiTabla'";
Query->Prepare();
Query->Open();

MiTabla->FieldByName("Campo")->AsInteger = 1 + Query->FieldByName(Ultimo")->AsInteger;

_________________
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

Bueno la verdad es que me he quedado sin palabras al ver algunos de los comentarios aqui expuestos.
Primero de todo, error mio por no poner el motor de la Bade de Datos, en este caso es MYSQL.
Segundo, ya estuve buscando en los foros, pero no encontre nada, no se si la implementacion de buscar no funciona correctamente, pero cada vez que busco algo, me salen todos los post.Lo volvere a revisar.
Tercero, no es para el colegio, es simplemente que soy novato en este tipo de programas y en c++.
Cuarto, gracias a las personas que se dedican a responder a la gente sin experiencia como yo.
En fin, es que no se que decir visto lo visto.
Gracias de todas formas.
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Opcion del paso No. 7 antes expuesto.

revisa este post

https://cppbuilder.es/viewtopic.php?t=7016&highlight=mysql+genid

y por ultimo el que comento, que con la opcion busqueda
https://cppbuilder.es/viewtopic.php?p=27583
_________________
Cool
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: Responder citando

Me da gusto que en el foro exista gente que en verdad desea colaborar.

Pasando al problema de Alexeu nos ha comentado que se trata de MySQL. A diferencia de Interbase/Firebird que trabaja con generadores (César ha puesto las ligas en el mensaje anterior) MySQL utiliza una propiedad llamada AUTO_INCREMENT que puede ser aplicada a cualquier campo numérico.

Así que para crear un campo autonumérico debes indicarlo en la declaración de tu tabla.

Ej.

Código:
CREATE TABLE tu_tabla (
    id BIGINT(10) AUTO_INCREMENT
);


Con esto, tu campo se incrementará cada vez que agregues un registro a tu tabla.

Y bien, la mejor referencia que puedes encontrar para tu manejador está en su propio manual...esta es la liga (al menos de MySQL versión 5.1)

http://dev.mysql.com/doc/refman/5.1/en/index.html


Saludos!

P.D. César, me parece una buena idea eso de reunirnos. ¿Por qué no inicias la discusión en la Lista de deseos?
_________________
Quien hace una pregunta teme parecer un ignorante durante cinco minutos, quien no pregunta se mantiene ignorante toda la vida.
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: Otra manera Responder citando

Alexeu, otra manera de hacerlo ya que puedes requerir tu controlar el numero base en que comenzará tu campo incrementable sería mediante TRIGGERS en el evento BEFORE INSERT, un ejemplo claro lo puedes encontrar en el manual de MySQL o te recomiendo esta página en español para todos los usuarios de MySQL.

http://www.mysql-hispano.org/

Salu2 y noten la diferencia de cuando se estructuran bien las dudas Wink
_________________
ISC
Dobermannmx
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email Visitar sitio web del autor MSN Messenger
Mensaje    Asunto: Responder citando


_________________
Dios es real... a menos que se declare entero!
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.