Code : Tout sélectionner
Define.s ReqSql
;Préparation de la requête de création de la table des medias
ReqSql = "CREATE TABLE medias ("
ReqSql + "IdMedia INTEGER PRIMARY KEY," ;Identifiant enregistrement
ReqSql + "media BLOB," ;Contenu binaire
ReqSql + "Name TEXT" ;Libellé de l'opération
ReqSql + ")"
Debug ReqSql
Si j’insère ce code dans un code de création de base de données la variable ReqSql ne s'initialise pas correctement.debug a écrit :CREATE TABLE medias (IdMedia INTEGER PRIMARY KEY,media BLOB,Name TEXT
Code : Tout sélectionner
EnableExplicit
Define.i Database.i
Define.s DatabaseName = "assets.sqlite", ReqSql = ""
;Création d'un fichier vierge
If CreateFile(Database, DatabaseName)
CloseFile(Database)
Else
MessageRequester("Erreur", "Impossible de créer un fichier") ;En principe ça ne devrait pas arriver :)
End
EndIf
;Ouverture et création de la base de données
UseSQLiteDatabase()
If OpenDatabase(Database, DatabaseName, "", "", #PB_Database_SQLite)
;Préparation de la requête de création de la table des medias
ReqSql = "CREATE TABLE medias ("
ReqSql + "IdMedia INTEGER PRIMARY KEY," ;Identifiant enregistrement
ReqSql + "media BLOB," ;Contenu binaire
ReqSql + "Name TEXT" ;Libellé de l'opération
ReqSql + ")"
Debug ReqSql
;Exécution de la requete
DatabaseUpdate(Database, ReqSql)
CloseDatabase(Database)
If DatabaseError() = ""
MessageRequester("Information","Création de la base terminée")
Else
MessageRequester("Information","Erreur lors de la création de la table 'medias'" + #CRLF$ + DatabaseError())
EndIf
Else
MessageRequester("Erreur","Erreur lors de la création de la base de données" + Chr(13) + DatabaseError() )
EndIf
Comme vous pouvez le voir, il manque CREATE TABLE medias (debug a écrit :IdMedia INTEGER PRIMARY KEY,media BLOB,Name TEXT)
j'ai la solution d'initialisé la variable ReqSQL de cette manière
Code : Tout sélectionner
ReqSql = "CREATE TABLE medias (IdMedia INTEGER PRIMARY KEY, media BLOB, Name TEXT)"
Pouvez vous tester et me dire si vous rencontrez ce problème ?