UDF > SQLite >


_SQLite_Encode

Encode en binaire des donn�es de types cha�ne, nombre ou binaires pour une utilisation de type BLOB dans les instructions SQLite

#include <SQLite.au3>
_SQLite_Encode ( $vData )

Param�tre

$vData Donn�es � encoder (String, Number ou Binary)

Valeur de retour

Succ�s: Retourne une cha�ne encod�e.
�chec: Retourne une cha�ne vide et d�finit @error <> 0.

Remarque

La cha�ne encod�e est d�j� encadr�e par des guillemets simples.
Par exemple Chr(0) & Chr(1) ressemblerait � X'0001'.
La cha�ne encod�e peut �tre d�cod� par SQLite et stock� � l'�tat binaire comme un BLOB.
Pour les cha�nes qui doivent �tre stock�es en TEXT, utilisez _SQLite_Escape() .
Pour une valeur num�rique qui doit �tre stock�e en tant que telle, utilisez une concat�nation simple.

En relation

_SQLite_Escape

Exemple

#include <MsgBoxConstants.au3>
#include <SQLite.au3>
#include <SQLite.dll.au3>

Local $hFile, $vData, $sFileName, $sData, $hQuery, $aRow, $sMsg
_SQLite_Startup()
ConsoleWrite("_SQLite_LibVersion=" & _SQLite_LibVersion() & @CRLF)
_SQLite_Open()
_SQLite_Exec(-1, "CREATE TABLE IF NOT EXISTS Test (data blob); ")
$vData = Binary("Hello" & Chr(0) & "World"); = 48656C6C6F00576F726C64
$sData = _SQLite_Encode($vData)
_SQLite_Exec(-1, "INSERT INTO Test VALUES (" & $sData & "); ")
$vData = Binary(Chr(0) & @CRLF); = 000D0A
$sData = _SQLite_Encode($vData)
_SQLite_Exec(-1, "INSERT INTO Test VALUES (" & $sData & "); ")
$vData = Binary(Chr(0)); = 00 mais ceci est interpr�t� comme un nombre et retourne 0000000000000000
$sData = _SQLite_Encode($vData)
_SQLite_Exec(-1, "INSERT INTO Test VALUES ( " & $sData & " ); ")
_SQLite_Query(-1, "SELECT * FROM Test; ", $hQuery)
While _SQLite_FetchData($hQuery, $aRow, 1) = $SQLITE_OK
    $sMsg &= Hex($aRow[0]) & @CRLF
WEnd
MsgBox($MB_SYSTEMMODAL, "Result", $sMsg)
_SQLite_Close()
_SQLite_Shutdown()