Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Parameters passed using ? to SQL Server
Message
 
 
À
Tous
Information générale
Forum:
Visual FoxPro
Catégorie:
Client/serveur
Titre:
Parameters passed using ? to SQL Server
Versions des environnements
Visual FoxPro:
VFP 9 SP2
OS:
Windows 7
Network:
Windows 2003 Server
Database:
MS SQL Server
Application:
Web
Divers
Thread ID:
01614040
Message ID:
01614040
Vues:
43
Hi everybody,

We have queries like this:
  text to lcSql textmerge noshow pretext 3
                 select ri.*, rt.Descrip AS type_descrip, rt.maxdays, rt.maxrents, rt.shortdesc,
                        rt.showinfo, rt.SigRequire
                   from r_invent ri inner join r_types rt on ri.rentaltype = rt.typeid
                  where ri.equip_tag = ?pnEquiptag
            ENDTEXT
The equip_tag column is defined as decimal(17,0) in SQL Server. In SQL Trace I see the following query being executed:
exec sp_executesql N'select form_no from r_header where rental_no = @P1 ',N'@P1 float',719646112000
(for a similar query).

Note, that the parameter is passed as float. The question is - how to pass this parameter as decimal(17,0) instead? Is there any way without changing the current code?

May be I should put CAST on the right side, e.g.
 where ri.equip_tag = CAST(?pnEquiptag as decimal(17,0))
Thanks in advance.
If it's not broken, fix it until it is.


My Blog
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform