Page 1 sur 1

[R] Afficher le nombre d'enregistrement en titre

Posté : jeu. 05 juin 2014 09:35
par EzioGr38
Je travaille actuellement sur un programme d'extraction de BDD en autoit
Je voudrais savoir si c'est possible d'intégrer le nombre d'enregistrement que contient le résultat de l'extraction de ma BDD
Sous cette forme par exemple : nom_fichier_XX.txt Avec XX le nombre d'enregistrement

Si c'est possible comment faire ?

Merci d'avance pour l'aide que vous m'apporterez :)

Re: [..] Afficher le nombre d'enregistrement en titre

Posté : jeu. 05 juin 2014 11:39
par Hugues
Salut,

Oui c'est tout à fait possible.

Tu récupères la valeur de ta requête qui compte ton nombre de lignes de ton extraction puis tu écris: "nom_fichier_" & $NombreDenregistrements & ".txt".

Si tu veux plus d'info, dit nous quelle genre de base tu utilises (Access, SQLite) :mrgreen:

Re: [..] Afficher le nombre d'enregistrement en titre

Posté : jeu. 05 juin 2014 11:45
par Bayo
Bonjour,

Je sais pas si c'est c'est la partie SQL que tu demande ou autoit mais sinon tu fait

Code : Tout sélectionner

$sql=requête SQL
FileCreate(@ScriptDir & "\nom_fichier_" & $sql & ".txt", "Première ligne de ton fichier" & @CRLF)

Func FileCreate($sFilePath, $sString)
    Local $fReturn = True ; Create a variable to store a boolean value.
    If FileExists($sFilePath) = 0 Then $fReturn = FileWrite($sFilePath, $sString) = 1 ; If FileWrite returned 1 this will be True otherwise False.
    Return $fReturn ; Return the boolean value of either True of False, depending on the return value of FileWrite.
EndFunc   ;==>FileCreate
 
Je sais plus où j'ai récupéré la fonction FileCreate(), mais elle n'est pas de moi :)

Re: [..] Afficher le nombre d'enregistrement en titre

Posté : jeu. 05 juin 2014 12:02
par EzioGr38
Ma BDD est en MySql

Code : Tout sélectionner

requete = "SELECT DISTINCT maTable FROM(Equipement_modele) 
WHERE 1
FileCreate(@ScriptDir & "\famille2_" & $requete & ".txt", "DIVERS" @CRLF)

;Exécution de la requête
$exec = _Query($sql, $requete)
#cs
;Résultats affichés dans un fichier texte nommé equipWindows.txt
While NOT $exec.EOF
   FileWriteLine("c:\Interface\TestMySql\famille2.txt", $exec.Fields("strFamille_intitule").value)
   $exec.MoveNext
WEnd
#ce
_MySQLEnd($sql)


Func FileCreate($sFilePath, $sString)
   Local $fReturn = True 
   If FileExists($sFilePath) = 0 Then
      $fReturn = FileWrite($sFilePath, $sString) = 1
      Return $fReturn
   EndIf
EndFunc
 
J'obtiens qq erreurs mais je ne vois pas ce qu'il faut rajouter :/

Merci en tout cas :)

Re: [..] Afficher le nombre d'enregistrement en titre

Posté : jeu. 05 juin 2014 12:06
par Hugues
Exemple avec une base de données SQLite:
► Afficher le texte

Re: [..] Afficher le nombre d'enregistrement en titre

Posté : jeu. 05 juin 2014 13:28
par Hugues
Un exemple un peu brut:
► Afficher le texte

Re: [..] Afficher le nombre d'enregistrement en titre

Posté : ven. 06 juin 2014 09:39
par EzioGr38
Merci pour les exemples ils me seront très utiles !!
Mais en voulant compiler ton dernier exemple, Hugues, je n'arrive pas à charger la dll (SQLite.dll.au3)

Savez-vous pourquoi?

Re: [..] Afficher le nombre d'enregistrement en titre

Posté : ven. 06 juin 2014 09:59
par Hugues
Salut,

Telecharge le dll et ensuite dans ton script tu colles (pour l'explication, je suis pas un expert, peut-être qu'un spécialiste pourra te répondre mieux que moi):

Code : Tout sélectionner

Local $sLocalSQLiteDll = @ScriptDir & "\sqlite3.dll"
Local $sSQliteDll = _SQLite_Startup($sLocalSQLiteDll, True, 1)

If @error Then
    MsgBox($MB_SYSTEMMODAL, "SQLite Error", "'SQLite3.dll' Can't be Loaded!")
    Exit -1
EndIf