SetDatabaseBlob()

Syntaxe

Resultat = SetDatabaseBlob(#BaseDeDonnees, Index, *Memoire, TailleMemoire)
Description
Indique le blob à insérer lors de la prochaine utilisation de DatabaseUpdate(). 'Index' commence à 0, et indique sur lequel des paramètres non-définis le blob doit-être associé. La syntaxe SQL pour spécifier un paramètre indéfini varie en fonction de la base de données. Pour voir comment procéder, consulter les exemples ci-dessous.

Exemple: SQLite et ODBC

  ; SQLite et ODBC partagent la même syntaxe pour insérer un blob. C'est indiqué par le caractère '?'
  ;
  ; La base de données doit être connectée et avoir une table PHOTOS avec 3 colonnes (BLOB, VARCHAR(255), BLOB)
  ;
  SetDatabaseBlob(0, 0, ?Picture, PictureLength)
  SetDatabaseBlob(0, 1, ?SmallPicture, SmallPictureLength)
  DatabaseUpdate(0, "INSERT INTO PHOTOS (picture, name, small_picture) values (?, 'my description', ?);")

Exemple: PostgreSQL

  ; PostgreSQL utilise une autre syntaxe: $1, $2.. dans la requête pour indiquer les paramètres non-définis
  ;
  ; La base de données doit être connectée et avoir une table PHOTOS avec 3 colonnes (BYTEA, VARCHAR(255), BYTEA)
  ;
  SetDatabaseBlob(0, 0, ?Picture, PictureLength)
  SetDatabaseBlob(0, 1, ?SmallPicture, SmallPictureLength)
  DatabaseUpdate(0, "INSERT INTO PHOTOS (picture, name, small_picture) values ($1, 'my description', $2);")
Note: PostgreSQL utilise le type 'BYTEA' pour stocker les blobs. La conversion nécessaire pour stocker du binaire dans ce type de colonne rend souvent le blob très volumineux. Un bon moyen d'éviter cela est de l'encoder précédemment avec Base64Encoder() avant de l'insérer dans la base de données.

OS Supportés

Tous

<- PreviousDatabaseRow() - Database Index - UseODBCDatabase() ->