|
|
|
Граждане, помогите
|
|||
|---|---|---|---|
|
#18+
Уже взывал к помощи, меня отправляли в раные места. И всё-таки помогите с картинкой: до меня слабо доходит как закидывать и получать из БД картинку через TBlobField. Смотрел FAQ. Пытался сам. Не получается. Подкиньте, плиз, кодик как из Image закинуть картинку (все граф форматы, или часть форматов) в процедуру (процедура есть) через параметр типа Blob. Буду безмерно благодарен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2005, 10:17 |
|
||
|
Граждане, помогите
|
|||
|---|---|---|---|
|
#18+
Было-бы неплохо если-бы ты привел фрагмент кода где у тебя "не получатся". Это может ускорить процесс оказания помощи. Иначе народ будет слать тебя в ФАК. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2005, 13:23 |
|
||
|
Граждане, помогите
|
|||
|---|---|---|---|
|
#18+
В поле типа Image не картинки храняться, а любые бинарные данные большого объема. К картинкам этот тип данных вообще никакого отношения не имеет. Чтобы туда положить картинку, нужно поместить ее в память а затем выполнить что-то типа update THETABLE set thefield = ? а вместо вопроса подставить картинку. Как подставлять - зависит от того, какие средства доступа к СУБД используешь. Возможно, можно будет сбиндить память , содержащую картинку, прамо в бинарном виде, а возможно придется преобразовать в текстовый вид : 0x и далее побайтно , 2 символа на байт , типа 0xaf02344D .... То же самое примерно будет и при вызове процедуры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2005, 22:38 |
|
||
|
Граждане, помогите
|
|||
|---|---|---|---|
|
#18+
В БД под SQL сервером написана процедура добавления строки в таблицу. Из билдера через StoredProc задаю параметры. Один из параметров - Blob типа. Как этот параметр задать. Моя мысль: 1. объявить переменную TBlob... 2. присвойть ей значение файла - закачать туда файл 3. передать параметру процедуры это значения Как это сделать - ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2005, 16:19 |
|
||
|
Граждане, помогите
|
|||
|---|---|---|---|
|
#18+
MizerВ БД под SQL сервером написана процедура добавления строки в таблицу. Из билдера через StoredProc задаю параметры. Один из параметров - Blob типа. Как этот параметр задать. Моя мысль: 1. объявить переменную TBlob... 2. присвойть ей значение файла - закачать туда файл 3. передать параметру процедуры это значения Как это сделать - ? Подозреваю, что провайдеру БД пофигу какие данные ты пишешь на сервер. Т.е. приведи код записи в обычное поле test(текстовое) в БД. И от него модифицируешь под запись двоичных данных в поле image_test (image). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2005, 18:26 |
|
||
|
Граждане, помогите
|
|||
|---|---|---|---|
|
#18+
Mizer1. объявить переменную TBlob... 2. присвойть ей значение файла - закачать туда файл 3. передать параметру процедуры это значения Как это сделать - ? Мыслишь пральна. Падробностей не знаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2005, 21:04 |
|
||
|
Граждане, помогите
|
|||
|---|---|---|---|
|
#18+
2 Mizer Сорцы давай. А то будем играть в угадай-мелодию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2005, 22:14 |
|
||
|
Граждане, помогите
|
|||
|---|---|---|---|
|
#18+
вот для меня вся проблема и состоит в том, чтобы запихать файл в переменную типа BLOB. дальше я разберусь. а как в BLOB толкать файл из TImage - до меня не доходит. (соответственно - потом вытаскивать). нужна процедура, которая фозмёт файл из TImage (уже тыза запихнутый) и загонит его в переменную Blob. А там уже мне всё понятно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2005, 08:19 |
|
||
|
Граждане, помогите
|
|||
|---|---|---|---|
|
#18+
Пытался загнить следующее: Db::TField *field; TBlobField *blob = (TBlobField *) field; blob->LoadFromFile(PicDialog->FileName); не работает. PicDialog - открытие файла (диалог). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2005, 09:10 |
|
||
|
Граждане, помогите
|
|||
|---|---|---|---|
|
#18+
неужели у этого фиелда нет метода loadfromstream? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2005, 09:24 |
|
||
|
Граждане, помогите
|
|||
|---|---|---|---|
|
#18+
Mizerвот для меня вся проблема и состоит в том, чтобы запихать файл в переменную типа BLOB. дальше я разберусь. а как в BLOB толкать файл из TImage - до меня не доходит. (соответственно - потом вытаскивать). нужна процедура, которая фозмёт файл из TImage (уже тыза запихнутый) и загонит его в переменную Blob. А там уже мне всё понятно... Обрати внимание на: Из файла в BLOB Из BLOB в файл ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2005, 10:56 |
|
||
|
Граждане, помогите
|
|||
|---|---|---|---|
|
#18+
Станислав C. Mizerвот для меня вся проблема и состоит в том, чтобы запихать файл в переменную типа BLOB. дальше я разберусь. а как в BLOB толкать файл из TImage - до меня не доходит. (соответственно - потом вытаскивать). нужна процедура, которая фозмёт файл из TImage (уже тыза запихнутый) и загонит его в переменную Blob. А там уже мне всё понятно... Обрати внимание на: Из файла в BLOB Из BLOB в файл это чуть не то. мпне надо: TMemoryStream *M = new TMemoryStream(); M->LoadFromFile(PicDialog->FileName); ADO->Parameters->ParamByName("@fg")->Value = M ; ADO->Open(); чтобы в процедуру передать BLOB переменную ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2005, 14:05 |
|
||
|
Граждане, помогите
|
|||
|---|---|---|---|
|
#18+
Помогаю Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2005, 16:06 |
|
||
|
Граждане, помогите
|
|||
|---|---|---|---|
|
#18+
Добрался до: TMemoryStream *M = new TMemoryStream(); M->LoadFromFile(PicDialog->FileName); AD->Parameters->ParamByName("@fg")->LoadFromStream(M,ftBlob); AD->ExecProc(); на последней строке ругается : "Ошибка синтаксиса или нарушение прав доступа." ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2005, 16:07 |
|
||
|
Граждане, помогите
|
|||
|---|---|---|---|
|
#18+
Ещё 1 дохлый вариант: TBlobField *MyField = new TBlobField(NULL); MyField->LoadFromFile(PicDialog->FileName); что делаю не так, как следовало бы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2005, 19:10 |
|
||
|
Граждане, помогите
|
|||
|---|---|---|---|
|
#18+
ты по ссылкам принципиально не ходишь ? http://]http://www.sql.ru/faq/faq_topic.aspx?fid=334 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2005, 00:34 |
|
||
|
Граждане, помогите
|
|||
|---|---|---|---|
|
#18+
Lepsikты по ссылкам принципиально не ходишь ? http://]http://www.sql.ru/faq/faq_topic.aspx?fid=334 Этот вариант я понимаю, НО... Мне надо передать BLOB в качестве параметра процедуры - в этом вся загвоздка и есть. Мне не надо работы прямой записи, мне надо через ПРОЦЕДУРУ. Всё загружаю/выгружаю из переменной BLOB, но передать значение в процедуру не получается. Выскакивает ошибка. (см. выше) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2005, 08:47 |
|
||
|
Граждане, помогите
|
|||
|---|---|---|---|
|
#18+
ПОБЕДА ! в параметр из процедуру гружу через ...->Parameters->LoadFromFile(...) вытаскиваю через пример кода от Lepsik - класный пример. ОДНО НО ! не пойму как TImage работает с форматами файлов. Если был загружен BMP то JPEG грузить не хочет. Как с этим бороться, пока не знаю. Но всё-равно, всем спасиба ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2005, 15:48 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=32997016&tid=2033512]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
143ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
| others: | 205ms |
| total: | 446ms |

| 0 / 0 |
