ATOUTFOX
COMMUNAUTÉ FRANCOPHONE DES PROFESSIONNELS FOXPRO
Visual FoxPro : le développement durable

Forum AtoutFox : Re: SQL et PostgreSql   

Sujet

rss Flux RSS des derniers messages

Vous devez vous identifier pour pouvoir poser une question ou répondre.

lun. 13 janvier 2020, 15h15
alahem1
Algérie Algérie

atoutfox.public.association

Re: SQL et PostgreSql

ReBonjour,

La suite de la question .

je récupère le résultat de ma requête dans la fenêtre 'Session de données'

sqlresult => 1 ligne = 1,valeurtab1

-Question : Est ce que je peux nommer ma requête dans 'lvalue'?

2° écriture :

lvalue = "insert into vtable2 (idtable2fk,ctable2) values (1, 'valeurTab2')
sqlexec(nhandle,lvalue)
lvalue = "
select * from table2"
sqlexec(nhandle,lvalue)


Ok => sqlresult = 1,1,valeurtab2


3° écriture :

lvalue = "select * from vtable1"
sqlexec(nhandle,lvalue)
nvar = sqlresult.idtable1

lvalue = "insert into vtable2 (idtable2fk,ctable2) values (?nvar, 'valeurTab2')
sqlexec(nhandle,lvalue)
lvalue = "
select * from table2"
sqlexec(nhandle,lvalue)


Ok => 2,1,valeurtab2


4° écriture :

lvalue = "insert into vtable2 (idtable2fk,ctable2) values (select idtable1 from vtable1, 'valeurTab2')
sqlexec(nhandle,lvalue)
lvalue = "
select * from table2"
sqlexec(nhandle,lvalue)


Pas de résultat !!! Erreur dans la 1° lvalue.
Je n'arrive pas à la détecter.

Merci pour toute aide et bonne journée.

Alain
Bonjour,

Je veux mettre à jour des tables existantes de PostgreSql à partir de VFP9.

tables Postgresql :

1- table1 (idtable1 Int, Ctable1 Char(20)) ; idtable1 clé primaire auto incrémentée
2- table2 (idtable2 Int, idtable2fk int, ctable2 Char(20)) ; idtable2 clé primaire auto incrémentée , idtable2fk clé étrangère sur table1.idtable1.
3 - vtable1 vue sur la table1 et vtable2 vue sur la table2


dans la fenêtre 'commande' de VFP9 :

connexion avec la base de donnée de postgresql établie => nhandle = 1

1° écriture :

lvalue = "insert into vtable1 (ctable1) values ('valeurTab1')
sqlexec(nhandle,lvalue)
lvalue = "select * from table1"
sqlexec(nhandle,lvalue)

[/VFP]

je récupère le résultat de ma requête dans la fenêtre 'Session de données'

sqlresult => 1 ligne = 1,valeurtab1

-Question : Est ce que je peux nommer ma requête dans 'lvalue'?

2° écriture :

lvalue = "insert into vtable2 (idtable2fk,ctable2) values (1, 'valeurTab2')
sqlexec(nhandle,lvalue)
lvalue = "
select * from table2"
sqlexec(nhandle,lvalue)


Ok => sqlresult = 1,1,valeurtab2


3° écriture :

lvalue = "select * from vtable1"
sqlexec(nhandle,lvalue)
nvar = sqlresult.idtable1

lvalue = "insert into vtable2 (idtable2fk,ctable2) values (?nvar, 'valeurTab2')
sqlexec(nhandle,lvalue)
lvalue = "
select * from table2"
sqlexec(nhandle,lvalue)


Ok => 2,1,valeurtab2


4° écriture :

lvalue = "insert into vtable2 (idtable2fk,ctable2) values (select idtable1 from vtable1, 'valeurTab2')
sqlexec(nhandle,lvalue)
lvalue = "
select * from table2"
sqlexec(nhandle,lvalue)


Pas de résultat !!! Erreur dans la 1° lvalue.
Je n'arrive pas à la détecter.

Merci pour toute aide et bonne journée.

Alain


Permalink : http://www.atoutfox.org/nntp.asp?ID=0000019526
20 088 messages dans le forum • Liste complète des messages

Publicité

Les pubs en cours :

www.atoutfox.org - Site de la Communauté Francophone des Professionnels FoxPro - v3.4.0 - © 2004-2024.
Cette page est générée par un composant COM+ développé en Visual FoxPro 9.0-SP2-HF3