>    SELECT length(CAST ("Data" AS BLOB)) FROM "message_revision";

What about:

UPDATE "message_revision" SET "Data" = CAST ("Data" AS BLOB);

As a one-time command to correct the table. There is also the option of using 
triggers to ensure future "Data" values are kept as BLOB if the INSERT code 
cannot be corrected conveniently:

CREATE TRIGGER trigName AFTER INSERT ON "message_revision" WHEN 
TYPEOF("Data")!='blob' BEGIN UPDATE "message_revision" SET "Data" = CAST 
("Data" AS BLOB) WHERE "message_revision".rowid = NEW.rowid; END;

CREATE TRIGGER trigName2 AFTER UPDATE OF "Data" ON "message_revision" WHEN 
TYPEOF("Data")!='blob' BEGIN UPDATE "message_revision" SET "Data" = CAST 
("Data" AS BLOB) WHERE "message_revision".rowid = NEW.rowid; END;
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to