Очистить BLOB-данные
Назначение
Метод DelBlob удаляет BLOB-данные из всех BLOB-столбцов или указанного BLOB-столбца текущей записи последней выборки данных в заданном соединении (курсоре).
Синтаксис
value {< объект Connect > | < объект Cursor >}.DelBlob([Number])
-
Number -
Порядковый номер BLOB-столбца в текущей записи выборки данных, из которого должны быть удалены BLOB-данные. Если аргумент не задан, по умолчанию удаляются данные из всех BLOB-столбцов.
Возвращаемое значение
Объект Connection.
Пример
begin
connect = LinterConnection.Create()
connect.Open("SYSTEM", "MANAGER8", nil, M_AUTOCOMMIT)
puts "connection to RDBMS Linter is successed"
connect.SQLExecuteDirect("CREATE TABLE testBlob(ID INT, B1 BLOB);")
blob_data = "BLOB_VALUE"
connect.SQLPrepare("INSERT INTO testBlob(ID, B1) VALUES (?,?);")
connect.SQLBindParameter(1, 1)
connect.SQLBindParameter(2, blob_data)
connect.SQLExecute()
connect.SQLExecuteDirect("SELECT B1 FROM testBlob;")
connect.DelBlob()
connect.SQLExecuteDirect("SELECT B1 FROM testBlob;")
value = connect.GetBlob(1)[0]
expected_value = ""
if value != expected_value
puts "error : result value of 'B1' blob column is #{value}, expected #{expected_value}\n"
end
connect.SQLExecuteDirect("DROP TABLE testBlob;")
rescue = > error
puts error
ensure
if connect != nil
connect.Close()
connect.Free()
end
end