powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Text (MS SQL) через TQuery
15 сообщений из 15, страница 1 из 1
Text (MS SQL) через TQuery
    #32305133
R@ider
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Поделитесь, плз, знаниями про особенности работы с данными типа Text (MS SQL), чтобы вопросов больше не возникало.
Допустим имеем TMemo. Нужно через TQuery сделать insert (можно и select заодно).
...
Рейтинг: 0 / 0
Text (MS SQL) через TQuery
    #32305137
viceroy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Что-то не совсем понятно:
автор писал:... Нужно через TQuery сделать insert (можно и select заодно).
Ну и что (или кто) тебе мешает это сделать: MyQuery.Sql.Text:='текст твоего запроса....'....
...Обьясни подробнее - в чем проблема
..и еще
автор писал:Допустим имеем TMemo. - допускаем. :)
...
Рейтинг: 0 / 0
Text (MS SQL) через TQuery
    #32305159
R@ider
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблема в передаче параметра в запрос. Text - тип данных MS SQL. Данные берутся из TMemo. Пока что-то не выходит
...
Рейтинг: 0 / 0
Text (MS SQL) через TQuery
    #32305175
Fura
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вроде бы ничего и не выйдет. (у меня пока не получилось)
T-SQL позволяет принимать текст из приложения (например в ХП) и присваивать переменной типа varchar длинной не более 8000 знаков.
Если я не прав поправьте кто-нибудь.
...
Рейтинг: 0 / 0
Text (MS SQL) через TQuery
    #32305180
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не прав.

Тип параметра мемо неограничен.

2 R@ider
А ты через что работаешь? Через BDE? Бери ADO лучше. Только на 5 Дельфю тогда еще и сервиспак адошный накати.
А вставляется просто - в параметр запроса типа memo присваиваешь текст, какой нужно, и все, execsql.

-- Tygra's --
...
Рейтинг: 0 / 0
Text (MS SQL) через TQuery
    #32305367
R@ider
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2Tygra. Я через ODBC работаю.

Такую конструкцию делать пытался:
Parameters[18].DataType:=ftMemo;
Parameters[18].Value:=Memo1.Lines.Text;

Вот что говорит SQLmonitor по этому поводу:

46 12:01:35 SQL Error: SQL Server - [Microsoft][Диспетчер драйверов ODBC] Ошибка последовательности функций
47 12:01:35 SQL Vendor: ODBC - SQLError
48 12:01:35 SQL Error: SQL Server - Unmapped SQL Error Code: 0
49 12:01:35 SQL Data In: SQL Server - Rows affected = 0
50 12:01:35 SQL Stmt: SQL Server - Close

Что я не правильно делаю?
Пробовал и через Stream: то же самое
...
Рейтинг: 0 / 0
Text (MS SQL) через TQuery
    #32305724
Фотография ziktuw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот это вызывает сомнение:
Parameters[18].DataType:=ftMemo;

должно работать так:
Parameters[18].DataType:=ftString;

Для заполнения значениями поля типа text, ntext, image в полученном наборе удобно пользоваться классами TBlobStream, TAdoBlobStream
...
Рейтинг: 0 / 0
Text (MS SQL) через TQuery
    #32305911
Sclif
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2tygra
Тоже не совсем верно. До 2-х гигабайт text держит.
...
Рейтинг: 0 / 0
Text (MS SQL) через TQuery
    #32305916
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
До 2-х гигабайт text держит. применительно к Memo1.Lines.Text можно считать неограниченным ;)

-- Tygra's --
...
Рейтинг: 0 / 0
Text (MS SQL) через TQuery
    #32306019
Sclif
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну тоже верно. Text - WideString ак раз тоже до 2-х Gb так что проблемм быть не должно. Я лично засовывал 10 Мб айл текстовый в ХП.
...
Рейтинг: 0 / 0
Text (MS SQL) через TQuery
    #32306036
lustig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот реальный пример:

With Module_admin.Query2 do
begin
close;
SQL.clear;
SQL.Add('Insert into Query');
SQL.Add('(zapros)');
SQL.Add('Values(:zapros)');
parambyname('zapros').asmemo:=ZaprosRichE1.Text;
ExecSQL;
end;
...
Рейтинг: 0 / 0
Text (MS SQL) через TQuery
    #32306512
R@ider
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 Lustig:
И что, это поле zapros было text'ового типа??
...
Рейтинг: 0 / 0
Text (MS SQL) через TQuery
    #32306524
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а тебе какого надо ?
можешь юзать nVarchar или Varchar ....



...
Рейтинг: 0 / 0
Text (MS SQL) через TQuery
    #32306533
lustig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Было, есть и будет есть...
...
Рейтинг: 0 / 0
Text (MS SQL) через TQuery
    #32306549
R@ider
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Мне нужно было text. Если этот запрос работает, то возникает подозрение, что моя проблема была в том, что я присваивал значение параметра переменной в transact-sql, и дальше обращался к переменной.

Кстати ещё один вопрос:
Можно ли из TQuery вытащить значение переменной Transact-SQL?
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Text (MS SQL) через TQuery
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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