![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
en query -- ExcecSQL y Open
Hola amigos, aca otra vez molestandolos, tengo un pequeño problemita, tengo una tabla pacientes en donde los voy agregando, y al momento de llenar los datos en mi aplicacion le doy guardar y todo perfecto, el problema viene cuando inmediatamente despues intento guardar otro paciente ya no me respeta cuando intento validar si el paciente existe. Aqui les va el codigo:
En el boton de guardar tengo otras cosas pero aqui es donde tengo el problema. Esto esta al principio para checar si el usuario existe: Inmediatamente despues ya que se que el usuario no existe lo ingreso a la tabla con el siguiente codigo:
Hasta aquí todo bien, el problema es si intento guardar otro paciente, le pongo el mismo nombre y no me dice que está duplicado. Antes tenia el código cuando lo voy a insertar envez de tener: pero me decia "Error creating cursor handle" y por eso se lo cambie, no se si exista una instrucción como para despues de utilizar ExcecSQL poder cancelar o algo asi porque siento que esa es la instruccion que me esta danmdo problemas. ojalá me pudieran ayudar porque me estoy volviendo loco por no poder resolver esto, como siempre muchas gracias de antemano Última edición por marareta fecha: 20-07-2010 a las 07:10:33. |
#2
|
||||
|
||||
En la primera sentencia que haces, no esta bien por que te traes todos los pacientes y solo te compara uno, de los xx que te trae.
Cita:
Un saludo. |
#3
|
||||
|
||||
![]() Hola Amigo
Solo hacerte un par de comentarios: 1.- Siempre que vas a utilizar una query debes desactivarla antes de cambiarle el sql text, en vez de utilizar open / close, a mi en lo particular me da mejores resultados:
2.- Por una practica sana si utilizas una query para checar la existencia del cliente, utiliza otra para hacer el insert
Espero te sirvan este par de comentarios y como veras he cambiado un poco el texto en ambas querys, yo utilizo este tipo de cosas rutinariamente y con esto no me falla Saludos
__________________
Si robas, roba un beso, si mientes que sea por amor y si engañas que sea a la muerte!! |
#4
|
||||
|
||||
Estimado marareta :
Otro comentario. Yo también programo aplicaciones para uso con pacientes y es sorprendente la cantidad de pacientes que tienen el mismo nombre. Si utilizas este criterio para incluir nuevos registros en tu base de datos probablemente tendrás problemas. A mi me ha resultado de mayor utilidad utilizar un número único de identificación, que puede ser el Nº de la ficha del paciente o su RUT, NIF o como se llame en tu país. Saludos y ojalá este comentario te sirva |
#5
|
||||
|
||||
Totalmente de acuerdo con radenf, usa el DNI o algún identificador único, porque como uses nombres... ya veo extirpándole el apéndice al que fue a curarse una picadura de mosquito, y amputarle el pié al que fue por una gripe
![]() ![]() ![]()
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Open Cv | fmtidona | Gráficos | 0 | 13-02-2009 19:52:08 |
Error en Query.Open : Invalid field type (BLOB) | natalinuyo | Gráficos | 4 | 15-10-2008 20:16:29 |
Declarar variable y select en la misma llamada a Query.Open | Lord Delfos | SQL | 5 | 20-02-2008 01:05:19 |
Query dentro de otro query (Access) | FGarcia | SQL | 2 | 28-12-2007 05:46:05 |
Como hacer referencia a un query dentro de otro query? | JuanBCT | SQL | 2 | 05-09-2006 18:35:25 |
![]() |
|