Como vas?
Yo me referia a la sentencia SQL que dice INSERT INTO tableName (col1, col2) SELECT col1, col2 FROM otherTableName...
Esta instruccion NO inserta 1 registro, sino que mete todo el resultado del SELECT y se lo manda al INSERT INTO. Todo se ejecuta del lado del DBMS. Obviamente, el resultado del SELECT, digo la lista de columnas, DEBE coincidir en posicion y tipo con las columnas del INSERT INTO.
Un placer verte por estos pagos... bue... leerte en La Lista...
Salute,
Davo.
On 10/19/06, Pata del Santo <
[EMAIL PROTECTED]> wrote:
Hola DavoEfectivamente se puede hacerINSERT INTO Tabla (codigo,nombre,edad) VALUES (m.miCod,m.miNom,m.miEdad)Si las variables de memoria tienen el mismo nombre, se puede hacerINSERT INTO Tabla FROM MEMVAREn vez de hacer el APPEND FROM, tal vez sería más convenienteSELECT 0Use miTablaSELECT 0Use TemporalSCANSCATTER MEMVAR MEMOINSERT INTO miTabla FROM MEMVARENDSCANDe todas maneras, el APPEND FROM también debería funcionar.Estás seguro que no se agregan los registros?No será que hacés el APPEND sin abrir los índices (en cuyo caso los índices no se actualizan)Y luego cuando revisás la tabla la mirás con los índices abiertos? (en cuyo caso no se muestran los registros porque en el índice no existen)O será que el cursor no tiene nada en disco? (asegurate de ponerle READWRITE cuando creás el cursor, así lo "baja" al disco)Pata.Hola Nando,
De: [email protected] [mailto: [email protected]] En nombre de David Brunstein
Enviado el: jueves, 19 de octubre de 2006 16:12
Para: GUFA List Member
Asunto: [GUFA] Falla Append From en multiusuario
Viendo el tema, me gusto este ejemplo:
http://fox.wikis.com/wc.dll?Wiki~AppendFast~VFP
Che, pregunto, Fox no se banca el SQL
INSERT INTO <table> (col1, col2, col3)
SELECT col1, col2, col3 FROM <ottherTable>
(no se si la sintaxis es exactamente asi)
Es exactamente un append from pero con sentencias SQL.
Saludos,
Davo.
On 10/19/06, Nando <[EMAIL PROTECTED]> wrote:Mas alla del tema del Try...Catch mi principal problema es que no hace el append from,,,, hay alguna razon especial por la que no se permite hacer append si la tabla esta siendo usada por otra terminal??, mi idea era hacer el pack "cuando se pudiera" pero si o si necesito hacer el delete y el append from, si no se puede hacer en multiusuario ahi si largo cartel que informe la situacion y aborto el proceso.Pero la duda es si se puede o no hacer el append que quiero..SaludetesNando
De: [email protected] [mailto: [email protected]] En nombre de Martin Salias
Enviado el: Viernes, 13 de Octubre de 2006 17:52
Para: GUFA List Member
Asunto: [GUFA] Falla Append From en multiusuarioAsí es. Lo ideal es que el Try abarque (intente) lo menos posible, de manera que sepas claramente cuál es el problema y qué hacer en consecuencia.Salú,MS
On 10/13/06, David Brunstein <[EMAIL PROTECTED]> wrote:Entiendo perfectamente lo que decis, pero no es conveniente poner el codigo dentro del bloque Try?
Vos lo decis porque hay un solo bloque Catch que atrapa una excepcion global?
En el caso del codigo que le propusiste a Pablo, no esta atrapando excepciones que pueden darse en cuando se hace el PACK y/o el APPEND BLANK.
No es asi?
Saludos,
Davo.
On 10/13/06, Martin Salias <[EMAIL PROTECTED] > wrote:Hola, Davo.
Se puede, pero el problema es que perdés granularidad en la excepción que estás arrojando, pero con el mensaje que yo había puesto, no habría problema, porque le estoy diciendo que no se pudieron importar los datos. Fijate que hago el throw de una excepción mía con ese detalle, y en el UserValue incluyo la original, o sea que el consumidor de este código puede meterse para adentro y ver porqué no se pudo hacer la importación, si hiciese falta. Usualmente no se chequean estas cosas en un Try/Catch más eterno, pero si es útil si querés poner un manejador o log global de las excepciones, porque tenés todo el stack de excepciones disponibles, y podés armar todo el detalle.Saludos,MS
On 10/13/06, David Brunstein < [EMAIL PROTECTED]> wrote:Hola Pablo, Martin,
Se "deberia" hacer algo asi?
Try
Use Tabla_destino IN 0 EXCLUSIVE
Select Tabla_destino
PACK
APPEND FROM DBF(" Cursor_Origen ")
Catch to oExlocal oTuExcepcion as ExceptionoTuExcepcion = NewObject( "Exception" )oTuExcepcion.ErrorNo = 9999oTuExcepcion.Message = "No se pudo acceder a la tabla para importar datos"oTuExcepcion.UserValue = oExThrow oTuExcepcionFinally
Use in Tabla_destino
Endtryreturn
Bah... no se... pregunto, vio? :-)
Saludos,
Davo.
--
=======================
David Brunstein
Java/PB/VFP Developer
Winnipeg, MB
Canada
Before I speak, I have something important to say.
Antes de dar mi discurso, tengo algo importante que decir.
Antes de dar meu discurso, tenho algo importante para dizer.
G.M.
--
Martín Salías
www.Salias.com.ar
Agile Alliance Member - Microsoft MVP
--
=======================
David Brunstein
Java/PB/VFP Developer
Winnipeg, MB
Canada
Before I speak, I have something important to say.
Antes de dar mi discurso, tengo algo importante que decir.
Antes de dar meu discurso, tenho algo importante para dizer.
G.M.
--
=======================
David Brunstein
Java/PB/VFP Developer
Winnipeg, MB
Canada
Before I speak, I have something important to say.
Antes de dar mi discurso, tengo algo importante que decir.
Antes de dar meu discurso, tenho algo importante para dizer.
G.M.
