sql scripting blob h2

insertar un BLOB a través de un script SQL?



scripting h2 (2)

No h2database, pero puede ayudar; http://jerrytech.blogspot.com/2009/03/tsql-to-insert-imageblog.html

Tengo una base de datos H2 ( http://www.h2database.com ) y me gustaría insertar un archivo en un campo BLOB a través de un script de SQL simple (para llenar una base de datos de prueba, por ejemplo). Sé cómo hacerlo a través del código, pero no puedo encontrar la forma de hacer el script sql en sí.

Traté de pasar el camino, es decir

INSERT INTO mytable (id,name,file) VALUES(1,''file.xml'',/my/local/path/file.xml);

pero esto falla

Dentro del código (Java, por ejemplo), es fácil crear un objeto de archivo y pasarlo, pero directamente desde un script de SQL, me quedo ...

Alguna idea ?

David


Para realizar pruebas, puede insertar bytes hexadecimales literales o usar la función RAWTOHEX(string) , como se muestra a continuación.

create table a(id integer, item blob); insert into a values(1,''54455354''); insert into a values(2, RAWTOHEX(''Test'')); select UTF8TOSTRING(item) from a; TEST Test

Anexo: para cargar los campos BLOB de un archivo, FILE_READ(fileNameString) puede ser una alternativa útil.

insert into a values(3, FILE_READ(''file.dat''));