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  Metoda optima d...
 Metoda optima de manipulare a datelor aflate pe un server (MySql) remote
 
 3/8/2006 2:00:59 PM
User is offlinecclaudiu
50 posts


Metoda optima de manipulare a datelor aflate pe un server (MySql) remote
 (Romania)


Salutari tuturor,

Sunt nou pe aici, ma numesc Claudiu . Am o problema pe care probabil ca voi ati rezolvat-o de mult. Mai exact, incerc sa fac o aplicatie care sa manipuleze date dintr-o baza de date Mysql remote, instalata pe un pc la care am acces prin internet. Acum sunt in testari si am incarcat o tabela CASA cu un nr. relativ mare de inreg. (48.000).
In docum. VFP6 vad ca este recomandata crearea unei SQL VIEW REMOTE, printr-o conexiune ODBC. Toate bune si frumoase, dar cind deschid VIEW -ul, chiar daca folosesc WHERE casa_id = ... , deci ar trebui sa-mi dea o singura inreg, conexiunea mi se blocheaza. Banuiesc ca VFP incearca sa traga toata tabela remote si apoi sa faca query. Daca ma conectez prin prompter sistem ca si client la Mysql-ul de pe calc. remote si dau acelasi query imi aduce inreg. imediat.

Daca pun Mysql pe un pc in reteaua locala si fac acelasi lucru, merge bine. daca incerc REMOTE, se blocheaza.

Am incercat prin SQLCONNECT() si SQLEXEC(), imi ia query-ul instantaneu, dar nu ma descurc in manipularea cursorului , ffindca VFP nu vede cursorul ca un .dbf, ca sa creez un form pe baza lui.

Ce metoda imi recomnadati sa folosesc pt. manipularea datelor remote ?

 3/8/2006 2:10:49 PM
User is offlinerlutia66
229 posts
4th




Re: Metoda optima de manipulare a datelor aflate pe un server (MySql) remote
 (United Kingdom)
Incearca sa citesti si Conexiuni asincrone

Rares LUTIA
Matricia Solutions
 3/8/2006 2:48:13 PM
User is offlineDorin Vasilescu
1366 posts
1st




Re: Metoda optima de manipulare a datelor aflate pe un server (MySql) remote
 (Romania)
Cum folosesti WHERE casa_id = ... ?

In definitia remote view-ului sau comanda SELECT SQL pe view
1.
CREATE SQL VIEW casa AS SELECT ... FROM ... WHERE casa_id = ?m.parametru

sau
2.
CREATE SQL VIEW casa AS SELECT ... FROM ...
la remote view si
SELECT * from remote_view where casa_id = ?m.parametru


Daca e 2, trage tot de pe server si interogheaza cursorul.
 3/8/2006 3:16:34 PM
User is offlinenae racaru
714 posts
www.rarom.ro
1st




Re: Metoda optima de manipulare a datelor aflate pe un server (MySql) remote
 (Romania) Modified By nae racaru  on 3/8/2006 4:18:07 PM)
 cclaudiu wrote

Am incercat prin SQLCONNECT() si SQLEXEC(), imi ia query-ul instantaneu, dar nu ma descurc in manipularea cursorului , ffindca VFP nu vede cursorul ca un .dbf, ca sa creez un form pe baza lui.



Ar trebui sa-l vada pe cursor ca pe un dbf. In caz contrar foloseste comanda
=aerror(err)
?err(2)

si trebuie sa dea eroarea de la sqlexec().

VFP 6 si 9 + Oracle
 3/8/2006 3:18:02 PM
User is offlinecclaudiu
50 posts


Re: Metoda optima de manipulare a datelor aflate pe un server (MySql) remote
 (Romania)

Am crea VIEW-ul cu

CREATE SQL VIEW casa AS SELECT ... FROM ... WHERE casa_id = 48885

deci nu cu parametru, tocmai pt. a vedea cit de repede aduce o singura inreg. Stiu sigur ca am o inreg cu casa_id = 48885 .

Nu am undeva stocata comanda cu care am crea SQL VIEW ... am dat-o in fereastra command.

Incerc sa o creez din nou, dupa ce reusesc sa conectez la internet pc-ul remote.

Am inceput sa citesc thread-ul despre conexiuni asincrone, inca nu l-am terminat, sper sa gasesc acolo solutia

Multumesc

 

 3/8/2006 3:52:25 PM
User is offlinecclaudiu
50 posts


Re: Metoda optima de manipulare a datelor aflate pe un server (MySql) remote
 (Romania)

Am dat din nou comanda :

CREATE SQL VIEW casa remote connection cremote as select * from casa  WHERE casa_id = ?m.parametru

dupa 7 minute am oprit serverul Mysql de pe calc. remote

Am incercat si asa

nh=sqlconnect('dnsremote')
=sqlexec(nh, 'select * from casa where casa_id=48885', 'curs1')

sele curs1

brow

si a mers instantaneu. Sa inteleg ca CREATE SQL VIEW casa remote .... trage toata baza de date chiar daca are parametru ?

 3/8/2006 3:53:29 PM
User is offlineGrigore Dolghin
3590 posts
www.class-software.eu
1st






Re: Metoda optima de manipulare a datelor aflate pe un server (MySql) remote
 (N/A)

Am urcat in Downloads o aplicatie demo pe care am scris-o acum catva timp pentru un posibil client. VFP 9 + MySQL in regim local si peste internet. Baza de date este gazduita pe un server in state, la www.1amsoftware.com (Bob Lee - un bun prieten de-al meu). Am rulat si eu aplicatia acum si am constatat cu placuta surprindere ca oamenii care au testat-o chiar au salvat inregistrarile pe serverul lui Bob. Am gasit si un comentariu in limba romana. Nu stiu cine l-a scris, dar ii multumesc frumos. (scurta reverenta)

http://www.algis.ro/pafiledb352/index.php?act=download&id=99

Citeste documentul din directorul Docs (sper sa nu te plictiseasca, si sa nu te descurajeze faptul ca e in engleza). In esenta, comutarea aplicatiei din LAN in WAN si invers se face prin modificarea informatiilor din fisierul connectioninfo.txt (aflat in Other). Textul din fisier este self-explanatory.

Succes. Daca ai intrebari, iti stau la dispozitie.


Grigore Dolghin
Visual FoxPro MVP 2006 - 2010
Class Software
My blog
 3/8/2006 3:58:34 PM
User is offlineGrigore Dolghin
3590 posts
www.class-software.eu
1st






Re: Metoda optima de manipulare a datelor aflate pe un server (MySql) remote
 (N/A)

Am uitat sa precizez: ca sa faci demo-ul sa foloseasca baza de date din State, trebuie sa faci fisierul connectioninfo asa:

Server:www.1amsoftware.com
UserName:traderuser
Password:traderpass

(Scrie si in documentul Word inclus in arhiva).


Grigore Dolghin
Visual FoxPro MVP 2006 - 2010
Class Software
My blog
 3/8/2006 4:01:38 PM
User is offlineDaniel Buduru
2335 posts
1st




Re: Metoda optima de manipulare a datelor aflate pe un server (MySql) remote
 (N/A)
 cclaudiu wrote

Am dat din nou comanda :

CREATE SQL VIEW casa remote connection cremote as select * from casa  WHERE casa_id = ?m.parametru

dupa 7 minute am oprit serverul Mysql de pe calc. remote

Am incercat si asa

nh=sqlconnect('dnsremote')
=sqlexec(nh, 'select * from casa where casa_id=48885', 'curs1')

sele curs1

brow

si a mers instantaneu. Sa inteleg ca CREATE SQL VIEW casa remote .... trage toata baza de date chiar daca are parametru ?

CREATE SQL VIEW viewname creeaza definitia view-ului in DBC curent, si nu cursorul.
Cursorul se deschide apoi cu USE viewname ...
Daca se intepeneste atunci cand dai comanda de creare a view-ului, pare sa fie o problema de conexiune.
Intr-o prima faza, e mai comod de utilizat un proiect, crearea unei conexiuni, apoi remote view, intrucat designer-ele VFP vor verifica fiecare pas si vor da mesajele de eroare corespunzatoare. Definitiile astfel create, atat pentru conexiune, cat si pentru view, pot fi apoi luate si folosite oriunde in cod.


Daniel Buduru
 3/8/2006 4:05:36 PM
User is offlinecclaudiu
50 posts


Re: Metoda optima de manipulare a datelor aflate pe un server (MySql) remote
 (Romania)

Multumesc frumos, am s-o studiez cu atentie .

Imi da Conectivity error  .... access denied for grig@localhost ....

 3/8/2006 4:07:59 PM
User is offlineGrigore Dolghin
3590 posts
www.class-software.eu
1st






Re: Metoda optima de manipulare a datelor aflate pe un server (MySql) remote
 (N/A)

Si nu crezi ca e normal? Ai vreun user "grig", cu parola "grig", definit pe serverul MySQL instalat in calculatorul local? Sigur nu. De unde si eroarea.....

Citeste documentul, man. Sectiunile de configurare.


Grigore Dolghin
Visual FoxPro MVP 2006 - 2010
Class Software
My blog
 3/8/2006 4:11:25 PM
User is offlineGrigore Dolghin
3590 posts
www.class-software.eu
1st






Re: Metoda optima de manipulare a datelor aflate pe un server (MySql) remote
 (N/A)

Ia uite ce zice asta micu':

Local server configuration

If you want to run the application on your local MySQL server, please open “connectioninfo.txt” (found in “MySQLDemo\Other” directory) and replace the data entered with your own settings. I’ve used ‘grig’ and ‘grig’ for username and password. You have to replace them with <your_username_here> and <your_password_here> (the ones you have entered while working in MySQL console). Do not remove “Server”, “UserName:” and “Password:”. Just delete “grig” and replace it in both instances. The final result should look like this:

 

Server:localhost

UserName:grig

Password:grig

 

Web server configuration

I have shown the demo to Bob Lee before sending it to you, and he has created a database on his site. If you want to see how the application works over the web (the database is located at www.1amsoftware.com), please change the “connectioninfo.txt” as follows:

 

Server:www.1amsoftware.com

UserName:traderuser

Password:traderpass

 

In this case the app will try to connect to Bob’s server, instead your local server.

Either way, after successful connection, the application will show the login form.


Grigore Dolghin
Visual FoxPro MVP 2006 - 2010
Class Software
My blog
 3/8/2006 4:11:52 PM
User is offlinecclaudiu
50 posts


Re: Metoda optima de manipulare a datelor aflate pe un server (MySql) remote
 (Romania)

Imi da incorect login

user traderuser

password traderpass

 3/8/2006 4:14:34 PM
User is offlineGrigore Dolghin
3590 posts
www.class-software.eu
1st






Re: Metoda optima de manipulare a datelor aflate pe un server (MySql) remote
 (N/A)

Incorrect login la ce server? La localhost sau la www.1amsoftware.com?

Hai sa ne intelegem: traderuser si traderpass sunt pentru baza de date de pe internet! Pentru baza ta locala de date (pe care trebuie s-o creezi in prealabil - ai un fisier SQL in directorul Other) esti pe cont propriu. Daca iti pui userul "vasile" cu parola "marioara", alea trebuie specificate in fisierul text!

Citeste documentul, TE ROG.


Grigore Dolghin
Visual FoxPro MVP 2006 - 2010
Class Software
My blog
 3/8/2006 4:22:03 PM
User is offlinecclaudiu
50 posts


Re: Metoda optima de manipulare a datelor aflate pe un server (MySql) remote
 (Romania)

Recunosc ca m-am cam grabit sa vad cum merge si n-am citit documentul.

Am configurat connectinfo.txt din \Other asa cum mi-ai zis

Server:www.1amsoftware.com
UserName:traderuser
Password:traderpass

si totusi nu ma pot conecta la  www.1amsoftware.com .

 3/8/2006 4:32:26 PM
User is offlineGrigore Dolghin
3590 posts
www.class-software.eu
1st






Re: Metoda optima de manipulare a datelor aflate pe un server (MySql) remote
 (N/A)

In cazul acesta verifica firewall-ul si alte chestii, ca merge. Eu ma joc de vreo juma'de ora prin aplicatie, folosind exact acelasi exe. Daca la tine nu merge, problema e la tine.

Ce mesaj de eroare primesti?


Grigore Dolghin
Visual FoxPro MVP 2006 - 2010
Class Software
My blog
 3/8/2006 4:37:07 PM
User is offlinecclaudiu
50 posts


Re: Metoda optima de manipulare a datelor aflate pe un server (MySql) remote
 (Romania)

Am reusit sa ma conectez la server si merge ok.

Multumesc inca o data tuturor . Revin miine.

O seara buna

 3/9/2006 8:59:00 AM
User is offlineGrigore Dolghin
3590 posts
www.class-software.eu
1st






Re: Metoda optima de manipulare a datelor aflate pe un server (MySql) remote
 (Romania)

Am remarcat ca demo-ul acela a fost descarcat de vreo 20 de ori. Doar ca sa fiu sigur ca am nu am trecut sub tacere acest amanunt, o sa-l zic aici:

Pentru functionare, aplicatia are nevoie (in forma in care e descarcata din downloads) de runtime-ul de VFP 9.0 si de driverele ODBC pentru MySQL. Acestea sunt conditiile minime pentru ca ea sa poata functiona cu baza de date de pe net. Daca doriti sa o testati in regim local, este necesar runtime de VFP9, drivere ODBC pentru MySQL si un server MySQL, versiunea 4.1 sau mai mare. Instalarea serverului MySQL si configurarea lui sunt descrise pas cu pas in documentul word inclus in arhiva. In directorul Other exista un script sql, numit MySQLDemo.sql, care, rulat din consola, va crea baza de date locala si o va popula cu date (inclusiv imaginile).

Apropo, dupa ce vedeti demo-ul acela, va puteti inchipui ca N-AM prins contractul respectiv? It's a hard life out there :)


Grigore Dolghin
Visual FoxPro MVP 2006 - 2010
Class Software
My blog
 3/9/2006 11:30:51 AM
User is offlineanonymous
0 posts


Re: Metoda optima de manipulare a datelor aflate pe un server (MySql) remote
 (Romania) Modified By anonymous  on 3/9/2006 12:31:17 PM)

Intr-adevar frumoasa lucratura au facut acolo.

Si poti sa ne si spui din ce cauza nu se si foloseste?

 3/9/2006 11:40:01 AM
User is offlineGrigore Dolghin
3590 posts
www.class-software.eu
1st






Re: Metoda optima de manipulare a datelor aflate pe un server (MySql) remote
 (N/A)

#1. "au" nu e corect - am lucrat singur la chestia aia.

#2. Nici nu trebuia sa-l foloseasca - asta era un demo, si e construit pe portarea pe mysql a bazei de date Northwind. Formurile alea fac cam ceea ce face northwind.mdb din access. Sigur, nu e optimizata pentru accesul remote (fereastra aia parent-child da jos toate inregistrarile, chestie de neiertat in regim client/server), dar rolul demo-ului era sa demostreze cum se lucreaza remote si care este filozofia din spate. Se pare ca n-am fost suficient de convingator, totusi....


Grigore Dolghin
Visual FoxPro MVP 2006 - 2010
Class Software
My blog
  Visual FoxPro  Client/Server  Metoda optima d...

Search  Forum Home         

 Google Ads Minimize

    

Copyright 2002-2010 Profox   Terms Of Use  Privacy Statement