Foros del Web » Soporte técnico » Ofimática »

insert into en access 2003

Estas en el tema de insert into en access 2003 en el foro de Ofimática en Foros del Web. Hola amigos del foro. mi duda es la siguiente: tengo una tabla que hago la siguiente consulta: SQL = "SELECT codigo as id_paciente FROM pacientes" ...
  #1 (permalink)  
Antiguo 27/01/2009, 21:54
 
Fecha de Ingreso: octubre-2007
Mensajes: 30
Antigüedad: 16 años, 6 meses
Puntos: 0
insert into en access 2003

Hola amigos del foro.

mi duda es la siguiente:

tengo una tabla que hago la siguiente consulta:

SQL = "SELECT codigo as id_paciente FROM pacientes"

rs.open SQl,con,adopendinamic,adonlywrite

id_paciente = id_paciente + 1

pero al hacer lo siguiente:

SQL = "INSERT INTO paciente(codigo,documento,nombres,medicamentos) VALUES("+ id_paciente +",' "+ txtdocumento +" ',' "+ txtnombres +" ',' "+ txtdocumento" ')

set rs = con.execute(SQL)

me tira el error de que faltan argumentos o sino que no coinciden los tipos.

la base la tengo definida de la siguiente manera:

codigo (clave principal) - entero de 4 digitos.
documento - texto de 70 caracteres.
nombres - texto de 70 caracteres.
documento - memo.

aclaro que redefini la base de datos ultimamente.

¿cual es el problema?¿en que esta mal estructurada la consulta?¿puede ser que al redefinir la clave de la base produzca este error?¿como puedo solucionarlo?

cualquier respuesta desde ya agradecido.

Saludos.
  #2 (permalink)  
Antiguo 28/01/2009, 03:47
Avatar de Taribo007  
Fecha de Ingreso: agosto-2007
Mensajes: 1.338
Antigüedad: 16 años, 8 meses
Puntos: 18
Respuesta: insert into en access 2003

Podrias hacerlo sin necesidad de recordset, me explico, si en idPaciente, lo que haces (no me queda claro con la estructura que expones) es, al maximo valor del campo codigo de la tabla pacientes, sumarle uno, y luego la inserccion de los datos, puedes hacer:

id_paciente = Nz(DMax("Codigo", "pacientes"), 0) + 1

CurrentDb.Execute "INSERT INTO paciente(codigo,documento,nombres,medicamentos) VALUES(" & id_paciente & ",'" & txtdocumento & "','" & txtnombres & "','" & txtdocumento & " ')"

Un saludo
  #3 (permalink)  
Antiguo 28/01/2009, 17:10
 
Fecha de Ingreso: octubre-2007
Mensajes: 30
Antigüedad: 16 años, 6 meses
Puntos: 0
Respuesta: insert into en access 2003

Gracia por tu respuesta. lo que quiero hacer es un campo autonumerico por codigo, ya que el tipo autonumerico me trae problemas con el incremento. hice lo que me escribiste pero me tira el siguiente error:

no coinciden los tipos.
  #4 (permalink)  
Antiguo 28/01/2009, 17:36
 
Fecha de Ingreso: octubre-2007
Mensajes: 30
Antigüedad: 16 años, 6 meses
Puntos: 0
Respuesta: insert into en access 2003

ya lo arregle.

reemplaze + por & y me anda perfecto. quizas ese era el error.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:18.