Page 2 sur 2
Re: [..] Aide SQLite
Posté : mer. 30 mars 2011 23:41
par ricky
Hello,
voici un programme à jour et en plus portable, la grande classe :
SQLite Query
Re: [..] Aide SQLite
Posté : sam. 16 avr. 2011 22:55
par ricky
Hello,
dans le même registre, donc je reprends ce code :
► Afficher le texte
Code : Tout sélectionner
#include <SQLite.au3>
#include <Crypt.au3>
#include <perso\RecFileListToArray.au3>
$dir = FileSelectFolder("Dossier", @WorkingDir)
If @error Then Exit
_SQLite_Startup()
_SQLite_Open(@ScriptDir & "\bdd.sqlite")
_SQLite_Exec(-1, 'CREATE TABLE IF NOT EXISTS fichiers (id INT NOT NULL, path TEXT, name TEXT, md5 TEXT, created TEXT)')
$list = _RecFileListToArray($dir, "*", 1, 0, 0, 0) ; on liste les fichiers sans récursivité
If Not IsArray($list) Then Exit
For $i = 1 To $list[0]
ConsoleWrite("Fichier en cours: " & $list[$i] & @CRLF)
_SQLite_Exec(-1, 'INSERT INTO fichiers VALUES ('& $i &', ' & _
'"' & $dir & '", ' & _
'"' & $list[$i] & '", ' & _
'"' & _Crypt_HashFile($dir & "\" & $list[$i], $CALG_MD5) & '", ' & _
'"' & FileGetTime($dir & "\" & $list[$i], 1, 1) & '")')
Next
_SQLite_Close()
_SQLite_Shutdown()
; ##############################################################
Dans la liste des fichiers doivent être copiés dans un certain endroit et ceux copiés doivent être notés dans la bdd (en rajoutant pas la suite une colonne). Mais voilà mon problème, juste au dessus de _SQLite_Exec j'aimerais voir si mon fichier fait partie de la liste de fichiers nécessaires, par exemple : *.log, test*.txt ou tout autre filtre. Comment puis-je faire?
Merci d'avance pour votre aide
Re: [..] Aide SQLite
Posté : dim. 17 avr. 2011 01:14
par Tlem
N'oubliez pas les balises de code.
Merci
Re: [..] Aide SQLite
Posté : dim. 17 avr. 2011 05:59
par matwachich
Tout bêtement:
► Afficher le texte
Code : Tout sélectionner
#include <SQLite.au3>
#include <Crypt.au3>
#include <perso\RecFileListToArray.au3>
$filtre = "*.log;test*.txt"
$dir = FileSelectFolder("Dossier", @WorkingDir)
If @error Then Exit
_SQLite_Startup()
_SQLite_Open(@ScriptDir & "\bdd.sqlite")
_SQLite_Exec(-1, 'CREATE TABLE IF NOT EXISTS fichiers (id INT NOT NULL, path TEXT, name TEXT, md5 TEXT, created TEXT)')
$list = _RecFileListToArray($dir, $filtre, 1, 0, 0, 0) ; on liste les fichiers sans récursivité
If Not IsArray($list) Then Exit
For $i = 1 To $list[0]
ConsoleWrite("Fichier en cours: " & $list[$i] & @CRLF)
_SQLite_Exec(-1, 'INSERT INTO fichiers VALUES ('& $i &', ' & _
'"' & $dir & '", ' & _
'"' & $list[$i] & '", ' & _
'"' & _Crypt_HashFile($dir & "\" & $list[$i], $CALG_MD5) & '", ' & _
'"' & FileGetTime($dir & "\" & $list[$i], 1, 1) & '")')
Next
_SQLite_Close()
_SQLite_Shutdown()
; ##############################################################
Re: [..] Aide SQLite
Posté : dim. 17 avr. 2011 14:30
par ricky
Ben non, justement pas. Je dois avoir la liste complète, mais avant d'envoyer fichier dans la bdd s'il correspond à un filtre je dois le mettre quand même dans la bdd mais ajouter dans une autre colonne comme quoi il fait partie du filtre.
Tlem a écrit :N'oubliez pas les balises de code.
Merci
Corrigé
Re: [..] Aide SQLite
Posté : dim. 17 avr. 2011 15:09
par jchd
_SQLite_Exec(-1, 'CREATE TABLE IF NOT EXISTS fichiers (id INT NOT NULL, path TEXT, name TEXT, md5 TEXT, created TEXT)')
Je profite d'un passage express pour préciser un point qui a son importance : dans la table ci-dessus, la colonne id (déclarée INT) n'est _pas_ un alias pour le rowid, même si elle était déclarée primary key !
Seule une colonne
INTEGER primary key a l'effet escompté (et les vertus rattachées).