Форум программистов, компьютерный форум, киберфорум
Microsoft SQL Server
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.85/13: Рейтинг темы: голосов - 13, средняя оценка - 4.85
0 / 0 / 0
Регистрация: 04.02.2008
Сообщений: 40
1

Тип поля 'Image' и VB

04.02.2008, 16:18. Показов 2503. Ответов 8
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
как содержимое поля с типом 'Image' показать в VB и затем вернуть другую картинку?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.02.2008, 16:18
Ответы с готовыми решениями:

Как привесты тип Web.UI.WebControls.Image в Drawing.Image
Привет! Считываю из базы данных с помошью MemoryStream и с этого потока получаю Drawing.Image но...

Отображение Image из SQL Server 2012(тип Image) в ListView с использованием Binding
Подскажите есть ли возможность отображать изображения из SQL Server через Binding в ListView? При...

Увеличить даты из поля дата на основании поля тип и вывести в третье поле
В поле тип может быть несколько вариантов и в зависимости от значения увеличивать дату. Если тип =...

Сумма всех чисел поля, тип поля float.
Здравствуйте, я недавно начал изучать php и сейчас столкнулся с такой вот проблемой. В общем...

8
Delta
08.02.2008, 19:36 2
Считываешь в Recordset как есть (конкретно с картинкой не работал, но сохранял в базе содежимое файлов и восстанавливал). Поле image будет представлено полем DLongVarBinary, или что-то такое (в названии типа не уверен). Затем присваиваешь св-ву Picture (или ListImage) значение поля Recordset.

Может, присваивание напрямую не получиться - сейчас просто нет времени попробовать, но принцип такой. Можно попробовать через Clipboard, если присвоить напрямую не удасться.

Воткнуть в поле image данные можно, присвоив полю recordset описанного выше типа значение массива типа Bytе, где и содержиться необходимая информация (например, после считывания из файла). Затем просто Recordset.Update. Только: ADO при этом использует (сам смотрел под SQL Profiler) для занесения содержимого Recordset в базу некоррекную комманду типа:
Код
sp_executesql 'UPDATE <col> SET <col>=0x<HEXDIGIT>'
На месте <HEXDIGIT> стоит длиннующая строка - 16-ричное число, которое и представляет собой данные, которые нужно впихать в поле image и которые находятся в VB-массиве типа Byte. Это не есть хорошо, т.к. Microsoft рекомендует пользоваться функциями Writetext, Updatetext для работы с полями image и text. Кроме того, при длинных строках (более 2-3 млн. символов) этот метод сбивается. Поэтому (сам не пробовал этот вариант - руки не дошли), мне кажется, лучшим решением было бы создать в VB-коде SQL-комманду, которая содержала бы нужный код для функции Writetext (с декларацией TextPointer, т.д.) и строку-шестнадцатиричное представление данных которые нужно занести. Замет выполнить ее методом Execute объекта Connection, Recordset или Command, лучше Connection. Строку делать не более 100 символов длинной (организовать цикл).

Надеюсь, понятно объяснил. Это то, что ты спрашивал?
0 / 0 / 0
Регистрация: 04.02.2008
Сообщений: 40
10.02.2008, 15:22  [ТС] 3
Спасибо за ответ. Но что-бы избежать циклов я содержимое объекта PictureBox сохраняю в файл, потом читаю этот файл, и передаю как параметр на сервер, там уже соответственно сохраняю
0
0 / 0 / 0
Регистрация: 04.02.2008
Сообщений: 40
10.02.2008, 16:34  [ТС] 4
кстати как присвоить св-ву Picture (или ListImage) значение поля Recordset?
0
Delta
10.02.2008, 17:22 5
Ну, если ты сохраняешь результат в файл, то можно воспользоваться и функцией LoadPicture.

Что касается присваивания св-ву поля Recordset, попробую. Только пока времени нет.

Кстати, меня на твой вопрос навела жена, она MCP по SQL Server и иногда лазит сюда. Говорит мне, 'ты же когда-то делал что-то подобное, помоги человеку'.
0 / 0 / 0
Регистрация: 04.02.2008
Сообщений: 40
11.02.2008, 10:00  [ТС] 6
Будете в Киеве - угощение за мой счет.
0
Delta
11.02.2008, 10:45 7
Вы что серьезно?

Я вообще в Киеве живу. За приглашение спасибо (если оно мне адресовано), Вы лучше скажите: получилось у Вас то, что Вы хотели? Помогли ли Вам мои экперименты, которые я описал здесь?
0 / 0 / 0
Регистрация: 04.02.2008
Сообщений: 40
11.02.2008, 11:28  [ТС] 8
В принципе это был мой первый эксперимент по получению совета на форумах (до этого мне помогал восновном MSDN). Но общаться с людьми приятнее. Ваши советы мне помогли, может и я когда-нибудь на что-нибудь сгожусь.
0
Delta
11.02.2008, 13:46 9
А что, в MSDN есть интерактивная помощь, где можно задать вопрос типа 'Как связать два SQL Servera' через Интернет?

Мой первый вопрос к ним - как получить информацию из log-файла SQL Server. Какие транзакции, кто их делал и т.д..
11.02.2008, 13:46
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.02.2008, 13:46
Помогаю со студенческими работами здесь

Неверные параметры в операции сравнения. Нельзя сравнивать поля неограниченной длины и поля несовместимых тип
Приветствую всех, написал запрос в отладчике печатной формы, все нужные данные он мне показывает. ...

Дополнительные поля (Тип поля: список)
На сайте при добавлении имеется раздел &quot;Выбор плеера&quot; Значение поля (player) При нажатии вылазит...

UPDATE поля IMAGE
Здравствуйте, уважаемые участники сообщества. Возникла проблема с реализацией следующей задачи. ...

Image создание поля
Для реализации игрового поля необходимо создать массив объектов класса «ТImage», который состоит из...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru