Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: Zorrohack en 8 Febrero 2006, 12:00 pm



Título: Ordenar Datos en Base de Datos
Publicado por: Zorrohack en 8 Febrero 2006, 12:00 pm
estoy utilizando el Control Data y cuando guardo en la Base de Datos los sta guardando desordenadamente y quisiera saber como ordeno los datos de cualquier campo, tomemos un ejemplo que sea ordenar el campo de Apellidos como le hago?



Título: Re: Ordenar Datos en Base de Datos
Publicado por: el_chente23 en 8 Febrero 2006, 19:48 pm
Te recomiendo que cuando creas la tablas de la base de datos, uses campos llaves, de esa manera es mas rapido el moverte entre los registros, eso que comentas que te los guarda de manera desordenada, es porque no hay un campo llave, lo que puedes hacer en este caso es, antes de guardar los datos en la base de datos ordena los datos del RecordSet del control data.

Saludos


Título: Re: Ordenar Datos en Base de Datos
Publicado por: Ironhorse en 8 Febrero 2006, 20:29 pm
Realmente no importa como guarda los datos un motor de bases de datos, si quieres verlos por algun orden, debes hacerlo al momento de recuperar las filas, y crear indices en los campos que quieras ver ordenados para que el acceso sea optimo.


Título: Re: Ordenar Datos en Base de Datos
Publicado por: Zorrohack en 9 Febrero 2006, 11:49 am
Citar

Te recomiendo que cuando creas la tablas de la base de datos, uses campos llaves

Pues no puedo usar llaves porque algunos datos tienen que repetirse asi que ya encontre como hacerlo mediante codigo SQL seria asi:
Dim Data as DataBase, Record as Recordset
Set Data = OpenDataBase(App.Path & "\BaseDatos.mdb")
Set Record=Data.OpenRecordset("SELECT CampoTabla " & "FROM Tabla " & "ORDER BY CampoTabla ASC;")
Record.MoveLast

luego de hacer esto lo que hago es moverme al ultimo Record para asi sumarle uno y ese sera la Proxima Factura.

Gracias.


Título: Re: Ordenar Datos en Base de Datos
Publicado por: el_chente23 en 11 Febrero 2006, 03:58 am
Si lo que necesitabas era sacar el numero maximo + 1, puedes hacerlo de  esta manera
Código:
Select campo=max(campo)+1 from tabla
esta seria otra alternativa, para que no hicieras mas codigo de vb  ;D.

Saludos