Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
How to update table from a cursor (no view)
Message
From
05/09/2007 09:29:36
Cetin Basoz
Engineerica Inc.
Izmir, Turkey
 
General information
Forum:
Visual FoxPro
Category:
Other
Environment versions
Visual FoxPro:
VFP 9 SP1
Miscellaneous
Thread ID:
01252051
Message ID:
01252406
Views:
20
>>Dmitry,
>>There are usual ways and less usual ways. Usual ways 'do' it but not fast (well 'fast' is a relative thing). Fast ways are generally less used because it's harder to code for them.
>>For example you can make a cursor updatable by just setting a few properties, set the cursor to table buffered one and call a single tableupdate. It works but under the hood it sends the updates row by row, meaning you have many update/insert calls.
>>For an efficient and fast way:
>>-Add a column to cursor marking new and modified (GetNextModified)
>>-Bulk load to server temp table (or if you have option use openrowset())
>>-Create a single update and a single insert command and execute
>>Cetin
>
>Cetin,
>I like your suggestion of an "efficient and fast way". Thank you.
>
>But what I am not clear is, if we talk about updating VFP table at this time, how do you do a single update from a temp table (where this temp table has more than one row)? And how do you do single insert command whereas the temp table may have many rows that need to be inserted?

VFP or SQL server:

update targetTable from sourceTable set ... where ...
insert [into] targetTable (...) select ( ... ) from sourceTable where ...

Cetin
Çetin Basöz

The way to Go
Flutter - For mobile, web and desktop.
World's most advanced open source relational database.
.Net for foxheads - Blog (main)
FoxSharp - Blog (mirror)
Welcome to FoxyClasses

LinqPad - C#,VB,F#,SQL,eSQL ... scratchpad
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform