| ID | Asunto | Fecha | Nick | |
| 55359 | Como auto generar bien un ID | 02/06/11 13:15 | lucas.bass | |  |
Hola, muy buenas!! Primero, quiero disculparme con vosotros por ser tan pesado, xDD Bueno, a lo que ivamos: Quiero generar una BD de Access 2007 (*.accdb) mediante codigo. Y hago lo siguiente: Dim colIDTDS As New ADOX.Column()
With colIDTDS
.ParentCatalog = bd 'BD a la que se conecta.
.Name = "ID" 'Nombre de la columna
.Type = ADOX.DataTypeEnum.adGUID 'Es un campo ID
.Properties.Item("Jet OLEDB:AutoGenerate").Value = True 'Es autonumerico
End With
With tablaTDS
.Name = "TDS"
'Añadimos la columna a la tabla:
.Columns.Append(colIDTDS)
.Keys.Append("ID", ADOX.KeyTypeEnum.adKeyPrimary, "ID")
.Columns.Append("ID_PALET", ADOX.DataTypeEnum.adVarWChar, 255)
.Columns.Append("ID_TIENDA", ADOX.DataTypeEnum.adVarWChar, 255)
.Columns.Append("ID_PROCESO", ADOX.DataTypeEnum.adVarWChar, 255)
.Columns.Append("ID_TRANSFER", ADOX.DataTypeEnum.adVarWChar, 255)
.Columns.Append("DESCRIPCION", ADOX.DataTypeEnum.adVarWChar, 255)
.Columns.Append("FECHA", ADOX.DataTypeEnum.adDate)
End With
'Crea la tabla TDS:
bd.Tables.Append(tablaTDS)Hasta ahi, todo bien. Pero cuando me genera el ID (automatico y autonumerico) me genera algo asi: {73D5F926-5132-4812-96AF-D947A0DAB690} Y por ejemplo, cuando hago una consulta por ID, no me lo ordena correctamente. Alguna solucion posible?. Muchas gracias de nuevo! |
|
| ID | Asunto | Fecha | Nick | |
| 55360 | Re: Como auto generar bien un ID (Resp: 55359) | 02/06/11 14:40 | junior80 | |  |
Para generar 'Id' aleatorios suelo utilizar 'System.Guid.NewGuid().ToString', el problema es que genera 'Id' como los tuyos, si lo que quieres es poder ordenarlos te aconsejo que los crees tu, solución que se utiliza mucho.
Haces una consulta para que te devuelva el id más alto y lo incrementas en 1, si no te devuelve ningún 'Id' por que la no hay nada en la tabla lo inicializas tú por ejemplo en 1000.
Si te sirve ya sabes, marcala, sino comenta!!
Si esta respuesta resuelve tu duda, por favor pulsa en la de este mensaje. Gracias. |
|
| ID | Asunto | Fecha | Nick | |
| 55361 | Re: Como auto generar bien un ID (Resp: 55359) | 03/06/11 00:47 | bohemio | |  |
Hola gentes, que tal andamos? Y digo yo, si se incrementa solo, por que no le pasas el valor como null. Si le pasas el valor null al campo que le corresponda el auto incremento y los demas con los valores que les corresponda, en teoria se te deberia rellenar solo el campo autoincrement ( me parece, no estoy seguro del todo ) De esta forma nunca te equivocas en el que le corresponde y se te deberia ordenar solo puesto que es un numero mas al que este el ultimo.
Hasta prontisimo.
Si esta respuesta resuelve tu duda, por favor pulsa en la de este mensaje. Gracias. |