Visual Basic - pROBLEMA CON SENTENCIA INSET SQL

Life is soft - evento anual de software empresarial
 
Vista:

pROBLEMA CON SENTENCIA INSET SQL

Publicado por jAMES (149 intervenciones) el 19/09/2006 00:12:41
ENTORNO: Visual Basic 6.0 y base de datos en Acces XP

hOLA AMIGOS, TENGO EL SIGUIENTE PROBLEMA:
SITUACION:
Base de Datos = "AA" , tabla "VAL" // Se encuentra en el servidor (computadora principal)
Base de Datos = "BB" , tabla "VAL"// Se encuentra en el cliente (computadora secundaria)

DOS BASE DE DATOS DIFERENTES CON TABLAS IGUALES.

AGREGAR REGISTROS DE UNA BASE DE DATOS EXTERNA bb.mdb A LA BASE DE DATOS aa.mdb

// Esta opcion ya lo hice con una connexion ADO Y SENTENCIA SQL
// Previo a esto tengo las conecciones
// SQL="Insert Into VAL(ppto,val) IN 'C:\SYS\AA.mdb Select ppto,val from VAL"
- Se desea agregar los registros que envia las computadoras secundarias (BB:mdb) a las principales (AA.mdb)

PROBLEMA:
- Si existe el mismo registro en la base de datos AA y en la base de datos BB al ejecutar el programa solo debe de actualizarlo no insertar el mismo registro.

POR EJEMPLO:
Registro de la Base de datos AA tabla VAL
NOMBRE CANTIDAD
- TOYOTA 20
Registro de la Base de datos BB tabla VAL
NOMBRE CANTIDAD
- TOYOTA 40

El programa debe de verificar si existe o no el NOMBRE , SI existe , actualizar la cantidad y si NO existe INSERTAR el nuevo registro, tener en cuenta que son dos base de datos diferentes con la misma tabla.

Gracias x su ayuda
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

RE:pROBLEMA CON SENTENCIA INSET SQL

Publicado por Christian Rodriguez O. (23 intervenciones) el 21/09/2006 20:25:59
Facil

puedes usar un manejador de excepciones...

por ejemplo....

en la linea que ejecutas el SQL para insertar, detecta un error en tiempo de ejecucion (Siempre que uses la CLAVE de dicha tabla para insertar el nuevo registro, lo que es obvio), y se señala que el registro ya existe, lo que arroja un numero de error de clave duplicada, y en el manejador de excepciones pones un IF para resolver dicho error ejecutando la sentencia UPDATE.

Espero te sirva
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