Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.07.04;
Скачать: CL | DM;

Вниз

Как переконвертировать Long v VarChar2 ?   Найти похожие ветки 

 
DPashin   (2002-06-10 09:08) [0]

Имеется таблица с полем типа Long, содержащим строки длиной от 0 до 500 символов. Нужно преобразовать это поле к типу данных Varchar2. Как это сделать средствами Oracle, желательно через SQL?
Версия сервера-8.1.6.


 
DarkGreen   (2002-06-10 11:40) [1]

//Создаем временое поле

alter table my_tbl
add (new_field carchar2(500));

//Заносим в него данные из старого поля

update my_tbl
set new_field = old_field;

//Удаляем старое поле

alter table
drop column old_field;

//Пересоздаем его с нужным типом данных

alter table my_tbl
add (old_field carchar2(500));

//Опять данные перекачиваем

update my_tbl
set old_field = new_field;

//Удаляем временное поле

alter table
drop column new_field;

Или вот так, покороче, хотя может не получится (не знаю сможет ли от LONG в VARCHAR2 преобразовать:

alter table
modify (old_field varchar2(500));


 
DPashin   (2002-06-10 15:07) [2]

Может я конечно не прав, но

>//Заносим в него данные из старого поля
>update my_tbl
> set new_field = old_field;

не работает (Invalid use of long dataType).




 
MishGan`   (2002-06-10 15:50) [3]

Это можно сделать с использованием OCI (или чего нибудь подобного) только на клиенте.
Средства SQL/PLSQL не позволяют напрямую работать с LONG/LONG RAW полями.


 
DPashin   (2002-06-11 06:06) [4]

Спасибо.



Страницы: 1 вся ветка

Текущий архив: 2002.07.04;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
1-9789
Sniffer
2002-06-15 17:24
2002.07.04
Как свернуть програмно окно зная его Handle?


3-9764
onix
2002-06-13 11:13
2002.07.04
Translate error.Value out of bounds. What is this?


14-10000
agrig
2002-06-04 09:54
2002.07.04
два вопроса по Install Shield Express


3-9716
mrgrin
2002-06-10 18:29
2002.07.04
Как задать жесткий путь к базе для всех компонентов?


1-9912
Катерина
2002-06-23 10:44
2002.07.04
SpinEdit для Real