2016-10-25 3 views

Antwort

1

In VFP6, müssen Sie es in einer Schleife tun, wie Alan B. bereits zeigte.

Sie können jedoch den Stil verwenden, den Sie selbst aus VFP5 oder VFP3 probiert haben, wenn Sie die VFP9-Engine über VFPOLEDB verwenden. Dies ist manchmal sehr nützlich, damit Sie SQL ausführen können, das in älteren Versionen nicht verfügbar ist. dh:

Local cn 
cn = createobject('adodb.connection') 
cn.ConnectionString = 'Provider=VFPOLEDB;Data Source=c:\MyDataFolder\' 
cn.Open() 
cn.Execute('set exclusive off') 
cn.Execute('Update table1 set name=table2.name from table2 where table1.Id=table2.id') 
cn.Close() 
2

Sie können‘ t tun es in einem Befehl in VFP 6, weil das SQL-Modul in dieser Version "UPDATE FROM" nicht unterstützt. Du musst also etwas Code schreiben.

Unter der Annahme, 'id' ist einzigartig in beiden Tabellen:

select table2 
scan 
    update table1 where table1.id = table2.id set table1.name = table2.name 
endscan 
Verwandte Themen