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

Forum AtoutFox : Re: Connection à une BD sqlite   

Sujet

rss Flux RSS des derniers messages

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

lun. 10 octobre 2022, 16h00
alahem1
Algérie Algérie

atoutfox.public.association

Re: Connection à une BD sqlite

Bonjour et merci à tous pour vos réponses.

1- la BD SQLITE est sur le même répertoire courant que l'appli.
2- ConSqLite prend une valeur > 0. ce qui me permet d’exécuter 2 requêtes sur main.db.
3- " La table main.db existe-elle bien dans la base de données (de même nom) main.db ?" : Non, il n'y a pas de table 'main' dans la BD.
4- Voila ce que je voulais :

a-Lister les tables qui existe dans main.db avec (Selectsql = SQLEXEC(conSqLite, "SELECT name FROM main.db"), apparemment c'est la mauvaise commande.
Y a t'il une commande qui le permet(Lister les tables d'une BD)?

b-J'ai une table deviceTable dans main.db qui s'ouvre et j'ai un cursor que je liste.

**-- Connection à une base de donnees Sqlite située sur le répertoire courant
conSqLite = SQLSTRINGCONNECT("DRIVER=SQLite3 ODBC Driver;Database=.\main.db;")

IF conSqLite < 0
  * Erreur de création de connection
  =MESSAGEBOX("ERREUR Connection " + CHR(13) + ;
    "1-Code Erreur : "+STR(errcon1[1])+CHR(13)+ ;
    "2-" + errcon1[2]+CHR(13)+ ;
    "4-Etat courant ODBC SQL : " + errcon1[4]+CHR(13)+ ;
    "5-N° Erreur source de données ODBC : " + STR(errcon1[5])+CHR(13)+ ;
    "6-Descripteur Con ODBC : " + STR(errcon1[6]))
ELSE
  **-- a- Lister les tables de la base de données
  Selectsql1 = SQLEXEC(conSqLite, "SELECT name FROM main.db")
  IF Selectsql1 < 0
    =AERROR(errdel)
    =MESSAGEBOX("ERREUR1 Connection " + CHR(13) + ;
      "1-Code Erreur : "+STR(errdel[1])+CHR(13)+ ;
      "2-" + errdel[2]+CHR(13)+ ;
      "4-Etat courant ODBC SQL : " + errdel[4]+CHR(13)+ ;
      "5-N° Erreur source de données ODBC : " + STR(errdel[5])+CHR(13)+ ;
      "6-Descripteur Con ODBC : " + STR(errdel[6]))
  ELSE
    BROWSE
  ENDIF

  **-- b- Ouvrir la table deviceTable de main.db
  Selectsql2 = SQLEXEC(conSqLite, "SELECT* FROM deviceTable")
  IF Selectsql2 < 0
    =AERROR(errdel)
    =MESSAGEBOX("ERREUR2 Connection " + CHR(13) + ;
      "1-Code Erreur : "+STR(errdel[1])+CHR(13)+ ;
      "2-" + errdel[2]+CHR(13)+ ;
      "4-Etat courant ODBC SQL : " + errdel[4]+CHR(13)+ ;
      "5-N° Erreur source de données ODBC : " + STR(errdel[5])+CHR(13)+ ;
      "6-Descripteur Con ODBC : " + STR(errdel[6]))
  ELSE
    BROWSE
  ENDIF
  = SQLDISCONNECT(conSqLite)
ENDIF


Merci pour votre aide et bonne journée.
A.MAHALLA

Permalink : http://www.atoutfox.org/nntp.asp?ID=0000020030
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