Where dentro de insert to con SQL SERVER

Hola Experto!
Espero que me puedas ayudar... Necesito saber como realizar un "Insert to" y que dentro de el, Pueda controlar con un "where" que el dato que estoy Insertando no se encuentre en la base SQL Server.
Esto lo Estoy Realizando VFP con la sentencia SQLEXEC pero no encuentro como hacerlo funcionar.
Espero que me puedas ayudar.
Saludos!
Gabriel

1 respuesta

Respuesta
1
Te armo un ejemplo:
INSERT INTO tabla1 (id, nombre) ;
   SELECT id, nombre FROM tabla2 ;
   WHERE id >= 30
Esa es una forma de usar el where para filtrar los resultados que quieres grabar, si vos estas tratando.
En caso de que quieras filtrar los resultados del select para validar que no se encuentren vas a tener que hacerlo con 2 select, uno para verificar que no se encuentren y otro para grabar. EJ:
SELECT campo1 FROM tabla1 WHERE NOT IN (SELECT campo1 FROM tabla2) into cursor Resultado
INSERT INTO tabla2 (campo1); SELECT campo1 FROM resultado
Experto no he podido hacer que funcione, acá le mando el código VFP, este formulario realiza lo siguiente:
En thisform.text1.value se ingresa un valor y ese mismo se guarda en una base configuración con el nombre y se genera una base de datos.
STORE ALLTRIM(upper(thisform.text1.Value)) TO nomdb
x=sqlconnect("SQLSERVER")
SQLEXEC(X,"CREATE DATABASE &nomdb")
SQLEXEC(x,"use configuración")
SQLEXEC(x,"select nombre from bases where not in (select nombre from bases)","pre")
SQLEXEC(x,"insert into bases values('&nomdb'),SELECT('&nomdb')from pre ")
Espero que me puedas ayudar ya que necesito resolverlo y no encuentro la manera.
Muchas Gracias!
Gabriel

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas