>>>>Hi Karen
>>>>
>>>>First things first - design. The point of databases is not to do things Row By Agonizing Row, but to think in terms of sets. It is very rare to write a replace command to affect one record. If you are doing that, to me, it suggests this is happening inside a larger loop. 1 replace commands such as this
>>>
>>>Design?
>>>If one like to change multiple records there is SQL UPDATE. Why learning outdated syntax? Is there realy a sense in NEXT xx or WHILE xx? The data should not depend on order .... (Except you are dealing with VFP sources like vcx,scx frx ....)
>>>
>>>The good on REPLACE is that it can be used on a single record without any change of record pointer and superfluous expression. Here it has a great advantage to SQL UPDATE. So I would do what the OP seems to do (altering a field on a condition) on some pre-save checks on record level using REPLACE.
>>
>>REPLACE has another benefit
>>
>>REPLACE ;
>>field1 with value1, ;
>>field2 with value2
>>
>>is better than
>>
>>UPDATE (field1, field2) values (value1, value2)
>>
>>With long commands, having each field near the update value is a benefit.
>
>You're confused with INSERT - SQL syntax.
>
>The syntax of UPDATE - SQL is:
>
>UPDATE MyTable SET ;
> Column1 = Expression1 ;
> , Column2 = Expression2 ;
> ...
>
Having an = between each column and corresponding expression is closer and clearer than WITH.
Yes, and another benefit is that the code is portable to just about any other back end DB in existence with minimal changes.
Mike's point about the SQL insert command's readability is a good one though. That's a really primitive way to code.
Anyone who does not go overboard- deserves to.
Malcolm Forbes, Sr.