Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Need translation of basic foxpro commands into T/SQL
Message
De
03/09/2009 12:44:01
Cetin Basoz
Engineerica Inc.
Izmir, Turquie
 
 
À
03/09/2009 11:48:48
Walter Meester
HoogkarspelPays-Bas
Information générale
Forum:
Visual FoxPro
Catégorie:
Base de données, Tables, Vues, Index et syntaxe SQL
Versions des environnements
Visual FoxPro:
VFP 9 SP2
OS:
Windows XP SP2
Network:
Windows 2003 Server
Database:
Visual FoxPro
Application:
Desktop
Divers
Thread ID:
01422348
Message ID:
01422462
Vues:
62
>>>David,
>>>
>>>See answers inline.
>>>
>>>>I'm using VFP9 to communicate with SQLServer database, using SQLEXEC(). I need to know the corresponding SQL commands for a few basic VFP commands:
>>>>
>>>>1) REPLACE table1.field1 WITH "HELLO" FOR "FRANCE" $ table1.field2
>>>
>>>UPDATE Table1 set field1 = 'HELLO' where Field2 like '%FRANCE%'
>>>>
>>>>2) REPLACE table1.field3 WITH table2.field4 for table1.field5 = table2.field6
>>>>
>>>
>>>UPDATE T1 set field3 = T2.Field4 from Table1 T1 inner join Table2 T2 on T1.field5 = T2.field6
>>>
>>>>3) COUNT TO x FOR table1.field7 = "JOE"
>>>
>>>select count(*) from Table1 where Field7 = 'JOE'
>>>
>>>
>>>See also
>>>
>>>http://www.w3schools.com/sql/default.asp
>>>
>>>and
>>>
>>>http://fox.wikis.com/wc.dll?Wiki~VFPSQL-TSQL-Mapping
>>
>>
>>Naomi,
>>I know that you already know:) Never ever use hardcoded values like that especially when showing to a newcomer. Use parameters. ie:
>>
>>Don't do this:
>>
UPDATE Table1 set field1 = 'HELLO' where Field2 like '%FRANCE%'
>>
>>Do like this:
>>
>>value1 = 'HELLO'
>>value2 = '%FRANCE%'
>>text to m.lcSQLCommand noshow
>>UPDATE Table1 set field1 = ?m.value1 where Field2 like ?m.value2
>>endtext
>>
>>PS: PMFJI but not using parameters is in top 10 developer mistakes.
>>Cetin
>
>Have you tried something like
>
>
UPDATE SET Fields = ?mValue WHERE Field2 = ?SomeLowSelectiveValue AND Field3 = ?SomeHighSelectiveValue
>
>And then sometime after it
>
>
UPDATE SET Fields = ?mValue WHERE Field2 =  ?SomeHighSelectiveValue AND Field3 = ?SomeLowSelectiveValue
>
>You migh get a nasty surprise by the second statement to seem hanging. If we only could give a hint that the second needs to recompile its execution plan, I would always use parameters, but unfortunately, sometimes hardcoding makes some sense.
>
>Walter,

Sorry,
In my book it doesn't makes sense and I have never got such surprises.
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
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform