Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Изменение memo-поля  [new]
Newbie2015
Guest
Есть табличка с полем типа memo, в котором хранятся файлы.
Возникла необходимость изменить в файле текст "Сумма" на "Итог".

запрос select file_name from tablefiles where contentfile like '%Сумма%' не даёт результатов, хотя оно там точно есть в некоторых файлах (они же печатаются программой периодически)
Как найти файлы с нужным словом и поменять часть содержимого memo-поля?
24 июл 15, 11:22    [17929029]     Ответить | Цитировать Сообщить модератору
 Re: Изменение memo-поля  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37069
В MSSQL нет memo-полей.
24 июл 15, 12:30    [17929513]     Ответить | Цитировать Сообщить модератору
 Re: Изменение memo-поля  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2396
Newbie2015
котором хранятся файлы.
...
изменить в файле?


извлечь файл, проверить содержимое, изменить, сохранить обратно

contentfile - подозреваю у вас не текстовое
24 июл 15, 12:45    [17929598]     Ответить | Цитировать Сообщить модератору
 Re: Изменение memo-поля  [new]
Newbie2015
Guest
StarikNavy, почему не текстовое? очень даже текстовое:
CREATE TABLE [tablefiles] (
[file_name] [char] (15) NOT NULL ,
[file_description] [char] (30) NOT NULL ,
[contentfile] [text] NULL ,
[updated] [smalldatetime] NOT NULL
)
3 авг 15, 08:54    [17967618]     Ответить | Цитировать Сообщить модератору
 Re: Изменение memo-поля  [new]
o-o
Guest
Newbie2015,

Как вариант, у поля кириллический коллэйшен, а вы свой запрос выполняете в базе с некиириллическим.
Попробуйте юникодом передать: like N'%Сумма%'
3 авг 15, 09:31    [17967709]     Ответить | Цитировать Сообщить модератору
 Re: Изменение memo-поля  [new]
Jaffar
Member

Откуда:
Сообщений: 633
o-o,

или там вообще RTF`ник сохранен.
3 авг 15, 09:50    [17967773]     Ответить | Цитировать Сообщить модератору
 Re: Изменение memo-поля  [new]
Newbie2015
Guest
Jaffar, да-да-да. Точно так и есть. Я же писал, что в этом поле лежит файл. Если точнее то файл report_new.rpt (отчёт Crystal Report)
Вот я и интересуюсь, как бы в этом файле изменить текст. В принципе если непосредственно в поле не получится, то извлекать файл из этого поля не обязательно. Такой же файл лежит на локальном компьютере, в котором "Сумма" уже изменена на "Итог"
Только вот не получается записать этот файл в табличку, так как запрос
update tablefiles set contentfile = Select (SELECT * FROM OPENROWSET(BULK '\\usercomp1\worktemplates\report_new.rpt', SINGLE_BLOB)AS x ) where file_name= 'report_new.rpt' 

выводит сообщение, что bulk написан с синтаксической ошибкой

Да, забыл сказать версия MSSQL 7.0 (то есть древняя) и никакой документации найти не могу
3 авг 15, 15:26    [17969539]     Ответить | Цитировать Сообщить модератору
 Re: Изменение memo-поля  [new]
WarAnt
Member

Откуда: Питер
Сообщений: 2421
Newbie2015,

updatetext вам в помошь
3 авг 15, 16:09    [17969811]     Ответить | Цитировать Сообщить модератору
 Re: Изменение memo-поля  [new]
Tesla13
Guest
Newbie2015
Jaffar, да-да-да. Точно так и есть

Одно из представлений слова "Сумма" в rtf вот - lang1049\f0\fs22\'d1\'f3\'ec\'ec\'e0\lang9
4 авг 15, 11:43    [17972868]     Ответить | Цитировать Сообщить модератору
 Re: Изменение memo-поля  [new]
Winnipuh
Member [заблокирован]

Откуда: Київ
Сообщений: 10428
Newbie2015
Jaffar, да-да-да. Точно так и есть. Я же писал, что в этом поле лежит файл. Если точнее то файл report_new.rpt (отчёт Crystal Report)
Вот я и интересуюсь, как бы в этом файле изменить текст. В принципе если непосредственно в поле не получится, то извлекать файл из этого поля не обязательно. Такой же файл лежит на локальном компьютере, в котором "Сумма" уже изменена на "Итог"
Только вот не получается записать этот файл в табличку, так как запрос
update tablefiles set contentfile = Select (SELECT * FROM OPENROWSET(BULK '\\usercomp1\worktemplates\report_new.rpt', SINGLE_BLOB)AS x ) where file_name= 'report_new.rpt' 

выводит сообщение, что bulk написан с синтаксической ошибкой

Да, забыл сказать версия MSSQL 7.0 (то есть древняя) и никакой документации найти не могу


натюрлих, с ошибкой

напиши маленькое приложение на худой конец на c#, пусть оно загрузит.

Сообщение было отредактировано: 4 авг 15, 13:14
4 авг 15, 12:20    [17973110]     Ответить | Цитировать Сообщить модератору
 Re: Изменение memo-поля  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7868
Winnipuh, тоже думаю, что внешним приложением оптимально.
4 авг 15, 12:33    [17973193]     Ответить | Цитировать Сообщить модератору
 Re: Изменение memo-поля  [new]
Glory
Member

Откуда:
Сообщений: 104760
Более того. Такое приложение уже написано и даже включено в установку SQL-я. И называется оно bcp
4 авг 15, 13:18    [17973417]     Ответить | Цитировать Сообщить модератору
 Re: Изменение memo-поля  [new]
Winnipuh
Member [заблокирован]

Откуда: Київ
Сообщений: 10428
Glory
Более того. Такое приложение уже написано и даже включено в установку SQL-я. И называется оно bcp


там командная строка, а это отпугивает
4 авг 15, 14:03    [17973586]     Ответить | Цитировать Сообщить модератору
 Re: Изменение memo-поля  [new]
Newbie2015
Guest
Winnipuh, и в чём же ошибка?
31 авг 15, 09:33    [18089664]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить