FoxPro/Visual FoxPro - SQL duda

 
Vista:

SQL duda

Publicado por daniel (39 intervenciones) el 27/11/2003 23:07:20
en una sentencia INSERT se puede condicionar con WHERE ?
este codigo de programa esta bien?

finicio = ctod("01/01/2003")
ffinal = ctod ("31/12/2003")

insert into pedidos3 (ped_cli,ped_cod,laFecha ,losKg,ped_fechped, ; ped_nuevod,ped_ot,ped_pro);
values (pedidos.ped_cli,pedidos.ped_cod,pedidos.ped_fe1,pedidos.ped_kg1,;
pedidos.ped_fechped,pedidos.ped_nuevod,pedidos.ped_ot,;
pedidos.ped_pro);
where pedidos.ped_fe1 > = finicio

pues me da error de comando con palabra o frase no reconocida y no me doy cuenta donde puede estar el error ( el error lo da en el where).
Desde ya gracias a quien me sepa responder. Daniel

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:SQL duda

Publicado por Roman Suazo (2723 intervenciones) el 27/11/2003 23:41:15
No existe esa clausula en el INSERT de fox, no entiendo exactamente
lo que quieres hacer, pero creo que tal vez este comando te puede servir:

UPDATE - SQL (Comando)

Actualiza registros de una tabla con nuevos valores.

Sintaxis

UPDATE [NombreBaseDatos1!]NombreTabla1
SET Nombre_Columna1 = eExpresión1
[, Nombre_Columna2 = eExpresión2 ...]
WHERE CondiciónFiltro1 [AND | OR CondiciónFiltro2 ...]]

Sacado de la ayuda del fox
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

RE:SQL duda

Publicado por daniel (39 intervenciones) el 27/11/2003 23:44:40
ante todo gracias por responderme tan rapido, yo necesito agregar registros a la tabla , o sea dependiendo de la condicion de fecha agregarlos a la tabla pedidos3, se entiende, el update me permite eso?
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

RE:SQL duda

Publicado por Roman Suazo (2723 intervenciones) el 28/11/2003 00:23:37
Ok, no entiendo muy bien. Dejame aclararte lo que hacen los comandos:

insert, te añade un nuevo registro a la tabla, dandote el chance de asignarle valores a los campos del nuevo registro. Eso es todo.

El update lo que hace es que cambia los valores de los campos de los
registros que cumplan con la clausula WHERE, es decir, pone nuevos
datos (no crea nuevos registros).

Por lo que veo (tal vez entienda mal), quieres pasar los registros de una
tabla X a una tabla Y, pero solo los registros que cumplan con ciertas condiciones en la tabla X.

Si ese es el caso avisame por el foro, asi te doy ideas de como hacerlo.

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

RE:SQL duda

Publicado por daniel (39 intervenciones) el 28/11/2003 00:28:28
lo que quiero hacer es:
agregar registros de la tabla X a la tabla Y solo si cumple determinada condicion, suponiendo que la tabla Y comienza el proceso estando vacia
gracia por tu ayuda
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

RE:SQL duda

Publicado por Foxperto (1 intervención) el 28/11/2003 01:41:44
Hola Daniel:

Prueba con el Append From, tiene un clausula For con la que puedes filtrar los datos que vas a agregar.

Prueba y me cuentas.

Saludos
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

RE:SQL duda

Publicado por Roman Suazo (2723 intervenciones) el 28/11/2003 02:14:39
Si lo que dice el compañero es lo correcto el codigo seria:

selec Y
APPEND FROM X FIELDS TodosTusCampos FOR pedidos.ped_fe1 > = finicio

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