powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Комрады, доброго всем времени суток. А можно ли?
13 сообщений из 13, страница 1 из 1
Комрады, доброго всем времени суток. А можно ли?
    #37123215
Фотография voronk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PB9, MSSQL2005

в двух словах, начальство заявило "хочу чуствовать себя как в древнем Риме" ... т.е. хочу чтобы ты цеплял из нашей апликации .xml файл и отправлял его целиком в базу данных где мы будем с ним дальше разбиратса ...


вот я и подумал ... (первое что пришло в голову, но любые другие методы примутса и рассмотрятса на ура)
создаём процедуру:

alter procedure spu_xml_test
@data xml
as
set nocount on

/*****************************************************************
здесь я обрабатываю xml документ который пассанул из билдера как аргумент,
и обрабатываю, и распихиваю дату в необходимые таблицы.
в случае удачи возвращаю 1, в противном случае возвращаю -1
*****************************************************************/

select 1
go

на базе этой процедуры создаю datawindow сохраняю его как "dw_xml"

создаю окно, на него шлёпаю datawindow подписываю её как "dw_xml"

в скрипте окна открываю необходимый .xml файл, каким-то образом его читаю, загоняю в (blob? ... string?) и пассую это дело как аргумент для datawindow т.е. dw_1.retrieve(b_blob ... s_string ...) ???

зараннее благодарен за любые советы (пока я сижу в гуглях)
...
Рейтинг: 0 / 0
Комрады, доброго всем времени суток. А можно ли?
    #37123307
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
voronkаргумент для datawindow т.е. dw_1.retrieve(b_blob ... s_string ...) ???

Блоб в 9-ке в качестве аргумента не катит
...
Рейтинг: 0 / 0
Комрады, доброго всем времени суток. А можно ли?
    #37123308
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
updateblob - возможно
...
Рейтинг: 0 / 0
Комрады, доброго всем времени суток. А можно ли?
    #37123790
Фотография ChV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну ретрив-то надо делать по String.
Я не вижу абсолютно никакого резона заморачиваться на Blob.
Ведь даже если XML файл и содержит "бинарные" данные ( фото, исполняемый код программы, подписи ), то эти данные кодируются в Base64 - и на выходе для PB - это все равно String.
В процедуре потом можно поменять тип на XML.
Только не забыть про "шапку" типа - <?xml version="1.0" encoding="Windows-1251"?>
Другое дело - отображение данных XML в DW.
Произвольную XML невозможно отобразить - т.е. возможности XML значительно шире, чем DW.
Поэтому - если структура используемых типов XML жестко задана, то имеет смысл тратить время на отображение данных в DW ( и то далеко не всегда).
Если же структура - произвольная, то отображать данные надо через OLE объект.


Good Luck !
...
Рейтинг: 0 / 0
Комрады, доброго всем времени суток. А можно ли?
    #37125440
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ChVНу ретрив-то надо делать по String.
Я не вижу абсолютно никакого резона заморачиваться на Blob.

Good Luck !
Со стрингов придётся быстренько соскочить, слишком большими они будут, так чтоб конечно же Blob...
...
Рейтинг: 0 / 0
Комрады, доброго всем времени суток. А можно ли?
    #37127561
Фотография ChV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Филипп.... Со стрингов придётся быстренько соскочить, слишком большими они будут, так чтоб конечно же Blob...
Ну я не настолько безумен, чтобы спорить с Филиппом. :-)
Но все же ... Конечно, Blob "используются для хранения большого количества данных", но и возможности String- а не маленькие :
"String
Any ASCII character with variable length (0 to 2147483647). "
По моей работе - этого хватит с избытком. Но в общем случае - приходится, как всегда, соглашаться с Филиппом.

Хотя ... может я что-то не понял ?
Фразу Филипп"... слишком большими они будут ..." можно понять по разному.
Если идти по пути :
или XML - String
или XML - String - Blob
, то размер передаваемого параметра один и тот же. Или я не прав ?

Good Luck !
...
Рейтинг: 0 / 0
Комрады, доброго всем времени суток. А можно ли?
    #37127589
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ChVНо все же ... Конечно, Blob "используются для хранения большого количества данных", но и возможности String- а не маленькие :
"String
Any ASCII character with variable length (0 to 2147483647). "

Наверное, имелись в виду ограниченные возможности некоторых СУБД при работе с большими строками.
...
Рейтинг: 0 / 0
Комрады, доброго всем времени суток. А можно ли?
    #37128559
Фотография ChV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly MoskovskyНаверное, имелись в виду ограниченные возможности некоторых СУБД при работе с большими строками.
Конечно. Может быть. Но тут было указано конкретно
voronkPB9, MSSQL2005
А с MS SQL Server 2005 появился тип данных VARCHAR(MAX).
"The VARCHAR(MAX) data type indicates that the maximum storage size for the VARCHAR data type is 2^31-1 bytes"
Хотя по опыту работы ... Да на бумаге - все отлично. Но пока руками не проверишь и не убедишься ... :-)

Good Luck !
...
Рейтинг: 0 / 0
Комрады, доброго всем времени суток. А можно ли?
    #37129207
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MAX - 32 Kb
Больше строки не бывает, я бы не опирался на string в принцпе
Файл - blob
...
Рейтинг: 0 / 0
Комрады, доброго всем времени суток. А можно ли?
    #37129344
Фотография voronk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо друзья.
Стринг работает как доктор прописал, начальство уверило, что большего размера чем 200-300К, не будет ... так что живём.
Eсли дело дойдёт до блабов, прийдётса таблицу создавать а потом делать [updateblob] ... разве не так?
А пока, аргумент процедуре, хитрым селектом забил колонки из XMLa во временные таблицы, обработал, begin trans ... commit trans ... ну и результат вернул отформатированным репортом в той же datawindow ....

ребята, ещё раз спасибо, что поучаствовали ...
...
Рейтинг: 0 / 0
Комрады, доброго всем времени суток. А можно ли?
    #37134180
Фотография ЗоринАндрей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spas2001MAX - 32 Kb
Больше строки не бывает, я бы не опирался на string в принцпе
Файл - blob
это где это MAX - 32 Kb ?
...
Рейтинг: 0 / 0
Комрады, доброго всем времени суток. А можно ли?
    #37135142
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не забываем про это:)
RTFM Using literals To assign a literal value, enclose as many as 1024 characters
Хотя есть и вот это:)
RTFM String

Any ASCII character with variable length (0 to 2147483647).
...
Рейтинг: 0 / 0
Комрады, доброго всем времени суток. А можно ли?
    #37135153
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну и как Московой сказал - особенности работы с СУБД
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Комрады, доброго всем времени суток. А можно ли?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]