|
|
|
Помогите с BLOB полем
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Мне нужно добавить из Memo текст в поле BLOB. У меня был обычный SQL на добавления записей в б.д. strSQL5 = "INSERT INTO TDOCS "; strSQL5 += "(TITLE, ANNOTATION, ANNOTATION_E)"; strSQL5 += "VALUES "; strSQL5 += "("; strSQL5 += "'" + Edit1->Text + "',"; strSQL5 += "'" + Memo1->Lines->Text + "',"; strSQL5 += "'" + Memo2->Lines->Text + "'"; strSQL5 += ");"; Query1->SQL->Clear(); Query1->SQL->Add( strSQL5 ); Query1->Close(); Query1->ExecSQL(); Потом я изменила поля ANNOTATION, ANNOTATION_E на BLOB SUB_TYPE 1. Как мне теперь добавлять записи. Подскажите пожалуйста, очень надо!!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2004, 23:07:47 |
|
||
|
Помогите с BLOB полем
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. А запрос сделай таким: Код: plaintext 1. Дальше: Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 07:40:48 |
|
||
|
Помогите с BLOB полем
|
|||
|---|---|---|---|
|
#18+
Кстати, не по Интербейзу, но все-таки замечу: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Это, думаю, проще было бы записать так: Код: plaintext 1. 2. 3. 4. 5. -- LET`S ROCK! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 13:53:42 |
|
||
|
Помогите с BLOB полем
|
|||
|---|---|---|---|
|
#18+
Спасибо за комментарии. Но у меня вопрос, как быть с полем типа BLOB. Как мне из Memo, добавить данные в поле "ANNOTATION", имеющее тип Blob. Подскажите, пожалуста!!!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 14:00:17 |
|
||
|
Помогите с BLOB полем
|
|||
|---|---|---|---|
|
#18+
Гм... wadman , по-моему, все уже рассказал: Попробую снова: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Я даже приверил этот код (Кстати, мне интересно, на какой смеси Билдера и Дельфы написан был пример wadman `a.. -- LET`S ROCK! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 14:25:01 |
|
||
|
Помогите с BLOB полем
|
|||
|---|---|---|---|
|
#18+
А можно еще так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Но! Тогда к Query1 надо присобачить UpdateSQL . А это уже другая история... -- LET`S ROCK! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 14:34:30 |
|
||
|
Помогите с BLOB полем
|
|||
|---|---|---|---|
|
#18+
Мдя, у согрупников даже темы рядом на форуме располагаются... Ну тебе же понятно разъяснили... Берешь и вставляешь текст в запрос на добавление. Тока не забудь в нем поменять " на \" и ' на \'. А то оно матернется когда встретит " или '. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 15:07:02 |
|
||
|
Помогите с BLOB полем
|
|||
|---|---|---|---|
|
#18+
Scream, понятия не имею ;) я просто точку заменил на ->, что-бы было более понятно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 15:33:30 |
|
||
|
Помогите с BLOB полем
|
|||
|---|---|---|---|
|
#18+
wadmanScream, понятия не имею ;) я просто точку заменил на ->, что-бы было более понятно. Класс!!! Супер! Честно, хорошее настроение мне до конца дня ты обеспечил Я так и думал, что ты - дельфист. Кстати, если вместо := поставить = и методам Close и ExecSQL дописать () , то твой код будет отлично работать. VCL для всех един... -- LET`S ROCK! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 16:03:01 |
|
||
|
Помогите с BLOB полем
|
|||
|---|---|---|---|
|
#18+
Ребят спасибо! У меня вся проблема заключалась в BLOB полях. Если добвлять обычную запись, то всё хорошо, но когда в BLOB поле, то он ругается. Нужно было сделать так: Добавление записи: TMemoryStream* pms = new TMemoryStream(); Memo1->Lines->SaveToStream(pms); TMemoryStream* pms1 = new TMemoryStream(); Memo2->Lines->SaveToStream(pms1); Query1->SQL->Clear(); Query1->SQL->Text = "insert into tdocs (TITLE, ANNOTATION, ANNOTATION_E) values (:TITLE, :TITLE_E, :ANNOTATION, :ANNOTATION_E)"; Query1->ParamByName("TITLE")->Value = Edit1->Text; Query1->ParamByName("ANNOTATION")->LoadFromStream(pms, ftBlob); Query1->ParamByName("ANNOTATION_E")->LoadFromStream(pms1, ftBlob); Query1->ExecSQL(); delete pms; delete pms1; Изменение записи: TMemoryStream* pms = new TMemoryStream(); Memo1->Lines->SaveToStream(pms); TMemoryStream* pms1 = new TMemoryStream(); Memo2->Lines->SaveToStream(pms1); Query1->SQL->Clear(); Query1->SQL->Text = "update TDOCS SET TITLE=:TITLE, ANNOTATION=:ANNOTATION, ANNOTATION_E=:ANNOTATION_E, where ID_DOCS=:OLD_ID_DOCS"; Query1->ParamByName("TITLE")->Value = Edit1->Text; Query1->ParamByName("TITLE_E")->Value = Edit2->Text; Query1->ParamByName("ANNOTATION")->LoadFromStream(pms, ftBlob); Query1->ParamByName("ANNOTATION_E")->LoadFromStream(pms1, ftBlob); Query1->ParamByName("OLD_ID_DOCS")->Value = Query_Doc->FieldByName("ID_DOCS")->AsString; Query1->ExecSQL(); delete pms; delete pms1; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 23:08:15 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=32545738&tid=1578520]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
209ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
| others: | 209ms |
| total: | 481ms |

| 0 / 0 |
