У меня есть таблица DOCUMENTS в БД Oracle с приведенным ниже описанием
create table DOCUMENTS
(
DOC_ID NUMBER not null,
DOCUMENT BLOB not null,
DOC_URL VARCHAR2(4000)
)
Это простая таблица, которая используется для хранения изображений из нескольких источников.Из одного из источников, требование состоит в том, чтобы просто вставить HTTP-путь изображения без ДОКУМЕНТА (документ будет иметь значение NULL).
Поскольку в таблице столбец определен как NOT NULL, я пытался преодолеть это ограничение, вставив в таблицу пустой BLOB-объект.Я получил это, работая в операторе PlSql, используя функцию empty_blob () в инструкции INSERT, как показано ниже
Работа в Pl / Sql
insert into DOCUMENTS (doc_id,document,doc_url) values SEQ_DOCUMENT_ID.nextval, empty_blob(), 'http://path_to_image');
commit;
Но когда япопробуйте вставить его из моего постоянного хранилища NHibernate Я получаю сообщение об ошибке " ORA-01400: невозможно вставить NULL "
Не работает в Nhibernate
using (var session = SessionFactory.OpenSession())
{
Document documentDomain = new Document();
documentDomain.doc_url = "http://path_to_the_document";
documentDomain.document = new byte[0];
session.Save(documentDomain);
}
Есть ли что-то, чего мне здесь не хватает?