Visual Basic - Enrutar en Db

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil
Val: 5
Ha disminuido su posición en 8 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Enrutar en Db

Publicado por Granados (3 intervenciones) el 06/02/2018 19:16:51
Buenas amigos tengo un problema y es el siguiente estoy haciendo un programa de cobro pero no se como hacer para enrutar en una db osea un ejemplo

Id 1 Juan
Id2 alberto
Id3 Carlos
Id4 maria
Cree esos registros primero pero ahora quiero crear un nuevo registro Luisa pero quiero que quede después del 1 o del 2 y no que quede después de Id 4 maria.
Espero que me haya explicado bien
después de crear los registros al crear un nuevo cliente lo pueda enrutar a mi gusto después de alberto o después de carlos creo que se hacecon mysql pero no se como espero me puedas ayudar

Gracias de antemano
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 5
Ha disminuido su posición en 8 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Enrutar en DbGranafos

Publicado por Granados (3 intervenciones) el 06/02/2018 20:55:28
No necesariamente tiene que ser cuando creo un nuevo cliente es solo para saber como puedo enrutar atravez de MySQL se los agradezco mucho.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de gilman
Val: 594
Bronce
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Enrutar en Db

Publicado por gilman (359 intervenciones) el 07/02/2018 16:08:29
Si no se especifica un orden las BDs devuelven los registros de las consultas en un orden arbitrario, generalmente el orden de introducción de los registros, pero eso puede no ser así siempre, si se quiere que los registros se devuelvan en un orden especifico se debe utilizar la clausula ORDER BY.
En tu caso deberías incluir en la tabla una columna ORDEN y luego incluirla en la consulta que devuelve los registros, pero si la tabla va a tener muchos registros el mantenimiento de dicha columna podría llegar a ser excesivo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de LUIS A. FRANCO R.

Enrutar en Db

Publicado por LUIS A. FRANCO R. (93 intervenciones) el 07/02/2018 16:16:50
Buenos Días mi estimado amigo

Tienes diversas manera de como ordenar tus contactos, bien sea con caracteres alfanuméricos o numéricos. si quieres ordenarlo de manera alfabética solo con la sentencia order by de mysql puedes hacerlo. Y si lo deseas numéricas crea un campo código donde puedas ordenar tus contactos por ese código, es decir, ingresas a luisa en el campo 2 del código y te aparecerá en la segunda fila.

Me Explique?. de no ser así entonces envíame un correo con lo que llevas adelantado para ayudarte.

Sin mas por el Momento se Despide.

LUIS A FRANCO R
INGENIERO DE SISTEMAS
EMAIL: [email protected]
TLF: 0426-5834567
PIN: D600B685
INSTAGRAM: FRANCO776
TWITTER: @FRANCO776
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 5
Ha disminuido su posición en 8 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Enrutar en Db

Publicado por Granados (3 intervenciones) el 07/02/2018 18:22:52
Ok gracias amigos por responder

Pero en ese caso seria así como ustedes me explican

Id nombre orden
1. Carlos. 1
2. Luis. 2
3. Jose. 3
4. Albertó. 4
5. Luisa. 5
6. Andrés. 6

Ok, si deseo insertar un nuevo cliente y quiero que quede debajo de jose quedaría de 4 de ahí me toca modificar a alberto y cambiarlo. A 5 y Luisa 6 y sucesivamente igual seria si deseo meter otros , no se si me hago entender
Pero no lo deseo organizar alfabéticamente ni tanto numérico , si no por orden manual para los nuevos registros acomodarlos a mi gusto

Un ejemplo

Tengo 3 clientes que viven en un mismo barrio los alpes y y están enrutados
1 luis
2 Carlos
3 Andrés

Y voy a ingresar uno nuevo de ese mismo barrio pero quiero que quede después de luis y otro después de Carlos

1 luis
2 Luisa
3 carlos
4 Rafael
5 Andrés
Así quiero que quede después de insertar un nuevo registro y cuando vaya. Ingresar otro poder organizarlo manualmente

Espero que me haya explicado bien les agradezco mucho de antemano
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de gilman
Val: 594
Bronce
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Enrutar en Db

Publicado por gilman (359 intervenciones) el 08/02/2018 09:04:55
Yo al campo para ordenar no lo llamaría Id, lo llamaría orden o algo así.
Una vez dicho esto, el trabajo es sencillo.

Al insertar un registro:
1.- Localizar la posición P
2.- Si la posición P está ocupada, hay un registro con el campo ORDEN con ese valor, ejecutar la sentencia SQL
1
UPDATE TABLA SET ORDEN = ORDEN +1 WHERE ORDEN >= P
3.- Ejecutar la correspondiente sentencia INSERT

Si se quiere que la columna ORDEN sea correlativa, es decir, no halla huecos, despues de borrar un registro ejecutar la SQL:
1
UPDATE TABLA SET ORDEN = ORDEN -1 WHERE ORDEN > P
Donde P es el valor del campo ORDEN del registro eliminado.

El problema está en que, aunque la solución sea simple, cuando el número de registros aumente, el coste del mantenimiento será muy alto y sea mejor buscar otra solución al problema.
Como no se cual es el criterio para encontrar la posición en que deben insertarse los registros, no puedo aportar una idea de lo que se debe realizar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar