Search  
Friday, May 25, 2012 ..:: Forum ::.. Register  Login
 Forum Minimize
Pentru a putea posta mesaje trebuie să vă înregistraţi.
Notă: Mesajele cu conţinut jignitor sau ilegal (inclusiv cereri de soft piratat) nu sunt acceptate şi vor fi şterse imediat .

Pentru a primi raspunsuri rapide si corecte, scrieti in mesaj ce intentionati sa faceti, ce mesaj de eroare primiti, in ce context si in urma caror actiuni. De asemenea, mentionati versiunea de FoxPro in care lucrati!
Dacă nu specificați versiunea, se consideră VFP 9.0 SP2.

SearchForum Home
  Visual FoxPro  Client/Server  sp_execute...
 sp_execute
 
 12/22/2005 11:26:27 AM
User is offlineAlin Berce
371 posts
3rd




sp_execute
 (Romania)
Salutare, Am o procedura stocata care are niste parametrii. AS dori sa incerc sa executa aceasta procedura folosind sp_executesql cu parametrii @1 @2 @3 @4 si sa initializez acesti parametri cu valorile de transmis procedurii. Nu stiu cum sa fac acest lucru. Am apelat procedura in mod clasic dar as vrea sa vad daca acest mod ofera o mai buna performanta. Va multumesc.
VFP, C#, SQL Server 2005/2008
"Proud to be a ProFox member".
 12/22/2005 1:48:19 PM
User is offlinerlutia66
229 posts
4th




Re: sp_execute
 (United Kingdom)
Nu am raspuns, dar am o intrebare: de ce vrei sa folosesti o prcedura care lanseaza o procedura?
Eu unul asta am inteles ca vrei ...?

Rares

Rares LUTIA
Matricia Solutions
 12/22/2005 1:48:57 PM
User is offlinerlutia66
229 posts
4th




Re: sp_execute
 (United Kingdom)
Nu am raspuns, dar am o intrebare: de ce vrei sa folosesti o prcedura care lanseaza o procedura?
Eu unul asta am inteles ca vrei ...?

Rares

Rares LUTIA
Matricia Solutions
 12/22/2005 1:58:29 PM
User is offlineAlin Berce
371 posts
3rd




Re: sp_execute
 (Romania)
Greseala mea, din graba nu am oferit toate dataliile. Procedura este pe sql server 7 si o apelez dintr-un program visual foxpro 6. Am încercat cu 'exec nume procedura parametrii', insa am primit sarcina sa testez si cu sp_executesql ca, cica e mai oprimizat asa...
VFP, C#, SQL Server 2005/2008
"Proud to be a ProFox member".
 12/22/2005 2:05:00 PM
User is offlinerlutia66
229 posts
4th




Re: sp_execute
 (United Kingdom)
Atunci eu zic sa faci niste teste intai, in Query Analyzer cu exec si cu sp_executesql si vezi ce castig ai. Eu nu stiam de acest castig...
Daca ai vreun castig, foloseste exec sp_executesql... in fox in loc de exec simplu...
Daca nu, te duci la cine "cica" si ii spui ca nu ai castig.

Daca ai castig, oricum, spune-ne  si noua  :)

Rares

Rares LUTIA
Matricia Solutions
 12/27/2005 8:32:25 AM
User is offlineAlin Berce
371 posts
3rd




Re: sp_execute
 (Romania)
Using sp_executesql sp_executesql is introduced in Microsoft® SQL Server™ version 7.0. Using sp_executesql is recommended over using the EXECUTE statement to execute a string. Not only does the support for parameter substitution make sp_executesql more versatile than EXECUTE, it also makes sp_executesql more efficient because it generates execution plans that are more likely to be reused by SQL Server. Deci, cica serverul SQL refoloseste sp_executesql cu paranmetrii standard @1 @2 carora li se pot atrbui diferite valori. Daca ei recomanda...
VFP, C#, SQL Server 2005/2008
"Proud to be a ProFox member".
 12/27/2005 10:04:46 AM
User is offlineanonymous
0 posts


Re: sp_execute
 (Romania)
E eterna disputa intre a folosi query string-uri pre-procesate si cu parametrii , sau a folosi query string-uri contruite direct.
In mod normal, un server de SQL are o zona de memorie in care tine toate string-urile SQL trimise spre executie. Parsate, adice intr-un fel compilate. Acuma, imagineaza-ti o aplicatie in care toata lumea cauta dupa facturi sa faca oareshce cu ele. Daca tu ii trimiti de la 800 de useri macar doua query-uri de genul 'select * from facturi where id=xx', vei regasi in zona respectiva 1600 de query-uri parsate, iar serverul va pierde timpul corespunzator pentru a le parsa. In schimb daca ii trimiti din fiecare client 'select * from facturi where id=?' dupa care faci substitutia parametrului, server-ul va face parsing-ul o singura data, intructiunea ramine acolo compilata, si fiecare o foloseste la nevoie. Rezulta cistig de memorie si de timp. Sper ca acuma e mai clar de ce recomanda sintaxa respectiva.
 12/30/2005 9:32:21 AM
User is offlinerlutia66
229 posts
4th




Re: sp_execute
 (N/A)
O sa ziceti ca sunt incapatanat...

Gents, practic care e diferenta? - cate zecimi de secunda se castiga? Ce diferente palpabile apar dpdv al incarcarii serverului?


Adica, teoria ca teoria, dar cu practica cum stam?

No offense,
Rares

Rares LUTIA
Matricia Solutions
 12/30/2005 9:56:07 AM
User is offlineanonymous
0 posts


Re: sp_execute
 (Romania)
N-o sa zic nimic personal, ca nu-i o problema de forum :))) ... dar stii prea bine ca ca diferentele se pot testa intr-un context bine definit, si nu asa la modul general. Ca sa fiu mai concret, depinde de cum a fost implementata aplicatia client. Unele se preteaza la optimizare, altele nu. Ia exemplul care l-am dat mai sus, unde se vede destul de clar zic eu de unde provine optimizarea, si extinde-l la o cautare generala pe fisierul de facturi. Daca ai "n" cimpuri pentru fiecare factura, si userul iti completeaza numai cele pe care il taie pe el capul in momentul respectiv, vei construi un select cu o clauza "WHERE" variabila, unde cele expuse mai sus nu se aplica. Si astea sint doar doua exemple simpliste. Deci, defineste contextul, si atunci poti face niste teste.
Altfel, degeneram in discutia care e cel mai bun limbaj de programare ( apropos, chiar citeam zilele trecute un articol destul de interesant pe tema asta, http://www.paulgraham.com/avg.html ), sau cine e mai tare, Superman sau Spiderman...
My 2c :)
  Visual FoxPro  Client/Server  sp_execute...

Search  Forum Home         

 Google Ads Minimize

    

Copyright 2002-2010 Profox   Terms Of Use  Privacy Statement