_SQLite_Escape
Экранирует строку или число при использовании как текста в SQLite запросах
#include <SQLite.au3>
_SQLite_Escape($sString)
Параметры
$sString | Строка для экранирования |
Возвращаемое значение
Успех: | Возвращает экранированную строку |
Ошибка: | Возвращает пустую строку и устанавливает @error |
@error: | 1 - Ошибка вызова 'sqlite3_mprintf' SQLite API |
2 - Ошибка преобразования строки в UTF-8 | |
3 - Ошибка чтения экранированной строки |
Примечания
Экранированная строка уже обернута одинарными кавычками.См. также
_SQLite_EncodeПример
#include <SQLite.au3>
#include <SQLite.dll.au3>
_SQLite_Startup()
ConsoleWrite("Версия библиотеки SQLite = " & _SQLite_LibVersion() & @CRLF)
Local $sTestString, $aRow
For $i = 1 To 255
$sTestString &= Chr($i)
Next
; Теперь $sTestString содержит строку, в которой 255 символов ASCII
_SQLite_Open() ; открывает базу данных в памяти
_SQLite_Exec(-1, "CREATE TABLE test (a)") ; создаёт таблицу "test"
_SQLite_Exec(-1, "INSERT INTO test VALUES (" & _SQLite_Escape($sTestString) & ")") ; вставляет значения в таблицу с экранированием
_SQLite_QuerySingleRow(-1, "SELECT a FROM test LIMIT 1", $aRow) ; запрос ранее добавленной строки
If $aRow[0] == $sTestString Then ConsoleWrite("! идентичны !" & @CRLF) ; проверяет, идентичны ли оригинал строки со строкой из базы данных
_SQLite_Shutdown()