Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / update LONG field / 9 сообщений из 9, страница 1 из 1
07.10.2016, 12:43
    #39322683
gda
gda
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
update LONG field
how can I update or search on LONG field?

the query:

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
 SELECT *
    FROM PAGE
   where text like '%sometext%';


SQL> descr PAGE;
Name         Type          Nullable Default Comments 
------------ ------------- -------- ------- -------- 
ID           NUMBER                                  
TITLE        VARCHAR2(100) Y                         
SECTION_ID   NUMBER        Y                         
SHOW_IN_LIST NUMBER        Y                         
SORT_FIELD   VARCHAR2(10)  Y                         
TEXT         LONG          Y                         

SQL> 


ORA-00932: inconsistent datatypes: expected NUMBER got LONG



I need update some string in LONG field, like:

Код: plsql
1.
2.
update PAGE set text = replace(text,'sometext','newtext')
where text like '%sometext%';
...
Рейтинг: 0 / 0
07.10.2016, 12:46
    #39322687
andrey_anonymous
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
update LONG field
Замените long на clob.
Вендор весьма рекомендует.
Нормально работать с long в PL/SQL сложно.
...
Рейтинг: 0 / 0
07.10.2016, 12:53
    #39322695
AlexFF__|
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
update LONG field
gda,

Или, если не хотите менять, через pl/sql
...
Рейтинг: 0 / 0
07.10.2016, 12:57
    #39322709
gda
gda
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
update LONG field
can I have en example how to change that using PL\SQL ?
...
Рейтинг: 0 / 0
07.10.2016, 13:19
    #39322742
AlexFF__|
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
update LONG field
gda,

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
begin
  for i in ( select view_name, text from dba_views where rownum <= 10 )
  loop
    if i.text like 'SELECT%' then
      dbms_output.put_line( 'I found it!' );
    end if;
  end loop;
end;
...
Рейтинг: 0 / 0
07.10.2016, 13:41
    #39322770
Вячеслав Любомудров
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
update LONG field
Не забываем про ограничение в 32K при работе через PL/SQL
...
Рейтинг: 0 / 0
07.10.2016, 13:54
    #39322788
orawish
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
update LONG field
gdacan I have en example how to change that using PL\SQL ?
строго (занудно) говоря, нет .
для этого нужен sql
см sql команду to_lob
...
Рейтинг: 0 / 0
07.10.2016, 13:55
    #39322790
Elic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
update LONG field
Не забываем про ограничение в 32K при работе через PL/SQLДля поискать.
А для поизменять - всё равно 4000.
...
Рейтинг: 0 / 0
07.10.2016, 15:04
    #39322857
gda
gda
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
update LONG field
modified field to CLOB, thx to ALL
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / update LONG field / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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