Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2006.09.10;
Скачать: [xml.tar.bz2];

Вниз

Вставка картинки в BLOB   Найти похожие ветки 

 
makvell   (2006-06-24 02:22) [0]

Доброго времени суток!
Вопрос такой: Как вставить запись запросом (insert into...), если одно из полей BLOB, а всавить в него нужно картинку (*.jpg)?
Заранее спасибо.


 
ЮЮ ©   (2006-06-24 05:49) [1]

Имно, как всегда
Insert Into MyTable(field1, ..., BlobField, ...) Values(:field1, ..., :BlobField, ...)

А дальше как в Helpe:

TParam.AsBlob

Specifies the value of the parameter when it represents a binary large object (BLOB) field.

type TBlobData = String;
property AsBlob: TBlobData;

Description

Set AsBlob to assign the value for a Blob field to the parameter. AsBlob takes a TBlobData value, which is an untyped string of bytes. Setting AsBlob sets the DataType property to ftBlob.

For example, if the variable Buffer is of type PChar and contains binary data read from a file, the contents of Buffer are directly assigned to the BLOB parameter using the AsBlob property:

Query1.Params[0].AsBlob := Buffer;

Note: Applications seldom need to read AsBlob because Blob fields can’t be used as output parameters.


 
Desdechado ©   (2006-06-24 15:35) [2]

типовой развнедельный пример
Query1.Sql.Text :=
  "INSERT INTO testblob " +
  " ( " +
  "  fBlob" +
  " )" +
  " VALUES" +
  " (" +
  " :ParamBlobField" +
  ")";
Query1.ParamByName("ParamBlobField").DataType := ftBlob;
Query1.ParamByName("ParamBlobField").ParamType := ptInput;
Query1.ParamByName("ParamBlobField").LoadFromFile("MyFile",ftBlob);
Query1.ExecSql;


 
makvell   (2006-06-24 21:06) [3]

Спасибо!


 
0bsid ©   (2006-06-28 13:52) [4]

а как для ADO ?


 
Desdechado ©   (2006-06-28 14:42) [5]

А что не ясно?


 
0bsid ©   (2006-06-29 11:57) [6]

Query       : TADOQuery;
Query не имееет ParamByName
:(


 
ЮЮ ©   (2006-06-29 12:02) [7]

у TADOQuery есть Parameters, которй имеет.


 
0bsid ©   (2006-06-29 12:28) [8]


> у TADOQuery есть Parameters, которй имеет.

спасибо большое!
полегчало :)


 
0bsid ©   (2006-06-29 12:37) [9]

при вставке текста длиной более 8000 знаков вываливается:
"String or binart data would by truncated"
         Ms:=TMemoryStream.Create;
         MessMemo.Lines.SaveToStream(MS);

         Query:=TADOQuery.Create(nil);
         Query.Connection:=ADOConn;
         Query.SQL.Clear;
         Query.SQL.Add(QueryTxt);
         Query.Parameters.ParamByName("MemoText").DataType:=ftMemo;
         Query.Parameters.ParamByName("MemoText").Direction:=pdInput;
         Query.Parameters.paramByName("MemoText").LoadFromStream(MS,ftMemo);
         Query.ExecSQL;
         Query.Close;
         Query.Free;
         Ms.Free;

если использовать ftBlob, то ошибка: Operand type clash: image is incompatible with varchar :(


 
Desdechado ©   (2006-06-29 12:45) [10]

какой тип поля в БД?


 
ЮЮ ©   (2006-06-29 12:46) [11]

а если просто (без потоков и  DataType-ов)
Query.Parameters.ParamByName("MemoText").Value := MessMemo.Lines.Text


 
0bsid ©   (2006-06-29 14:24) [12]


> какой тип поля в БД?

тип поля - text . БД - MSSQL2000


 
0bsid ©   (2006-06-29 14:29) [13]


> а если просто (без потоков и  DataType-ов)
> Query.Parameters.ParamByName("MemoText").Value := MessMemo.
> Lines.Text

всё равно ругается если более 8000 символов :(


 
Виталий Панасенко   (2006-06-29 15:35) [14]

По-моему, это есть максимальная длинна для данного типа поля. вот тебя и посылают


 
Кщд ©   (2006-06-30 12:41) [15]

Storage size of text also depends on the length of the data entered, but can store up to 231-1 (2,147,483,647) bytes.


 
Кщд ©   (2006-06-30 12:43) [16]


> Кщд ©   (30.06.06 12:41) [15]

поправочка - конечно же power(2, 31) :)



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2006.09.10;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.037 c
15-1155752035
ArtemESC
2006-08-16 22:13
2006.09.10
Microsoft Word шпионит...


3-1152098680
antoxa2005
2006-07-05 15:24
2006.09.10
Подскажите, а как организовать блокировку записи MS SQL Server


3-1152217283
sholom
2006-07-07 00:21
2006.09.10
Это mysql не позволяет или комп?


3-1151726679
Lis'S
2006-07-01 08:04
2006.09.10
Как работать с DBF - файлами.


15-1155824318
Дураг
2006-08-17 18:18
2006.09.10
А вы еще пользуетесь зомбоящиками?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский