Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.01.09;
Скачать: [xml.tar.bz2];

Вниз

SQL   Найти похожие ветки 

 
zzzrrv   (2003-12-10 11:40) [0]

Подскажите как можно в поле таблицы заменить один символ на другой при помощи запроса. Например у меня Pole1="мастер*1" и мне надо во всех записях этой таблицы поменять символ * на символ +. Буду благодарен за пример.


 
Johnmen   (2003-12-10 11:43) [1]

Запросом - никак.
В программе пробежать все записи и заменить.


 
Малиновский Владимир   (2003-12-10 11:44) [2]

Зависит от вашего сервера. Уточните.


 
Johnmen   (2003-12-10 11:49) [3]

>Зависит от вашего сервера.

Сервер - dBase, FoxPro :))))))


 
Малиновский Владимир   (2003-12-10 11:56) [4]

Ну, так это ж только ручками!

uses StrUtils...
...
While not Table1.Eof do begin
Table1.FieldByName["NyField"].AsString :=
AnsiReplaceStr(const "*", (Table1.FieldByName["MyField"].AsString), "Тут была звездочка!")




Table1.Next
end


 
sniknik   (2003-12-10 12:56) [5]

пример запроса(!!!) :)
UPDATE CASHGOOD
SET CARDARTICU = Left(CARDARTICU, InStr(CARDARTICU, "*")-1)+"+"+ Right(CARDARTICU, Len(CARDARTICU)-InStr(CARDARTICU, "*"))
WHERE InStr(CARDARTICU, "*") > 0

Johnmen © (10.12.03 11:49) [3]
> Сервер - dBase, FoxPro :))))))
здесь Сервер - Jet. dBase всего лиш ISAM (формат) ;о))))
работает со строкой
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\;Extended Properties= dBase IV;Persist Security Info=False

Малиновский Владимир (10.12.03 11:44) [2]
>Зависит от вашего сервера. Уточните.
очень, очень зависит.

zzzrrv (10.12.03 11:40)
ну как, помогло? ;о)
(думаю нет)


 
Johnmen   (2003-12-10 13:01) [6]

>sniknik © (10.12.03 12:56)

1. Что за функции Left, InStr, Right, Len ? Откуда они ?
2. Не понял, откуда появился сервер ? Или мы разные вещи под ним понимаем ? :)


 
zzzrrv   (2003-12-10 13:34) [7]

Если бы был сервер! А то у меня таблица dbf.
>sniknik не помогло
видимо только через программу


 
Alex_Bredin   (2003-12-10 13:43) [8]

2 zzzrrv
раз возникают такие задачи, надо подумать над улучшением структуры таблиц (если это в Вашей компетенции)


 
Anatoly Podgoretsky   (2003-12-10 13:46) [9]

sniknik © (10.12.03 12:56) [5]
А откуда взялся Jet, вроде никаких намеков на это.


 
Малиновский Владимир   (2003-12-10 13:50) [10]

Оттуда! Посмотри сам и удивишься...


 
zzzrrv   (2003-12-10 14:49) [11]

>малиновский если тоже необходимо сделать в таблице ORACLE то как


 
Малиновский Владимир   (2003-12-10 14:54) [12]

~, ndj. vfnm! @$# ~*_$@#!!!!
~, ndj. vfnm! @$# ~*_$@#!!!!
~, ndj. vfnm! @$# ~*_$@#!!!!

тебя же сразу спросили, что за сервер?


 
zzzrrv   (2003-12-10 14:57) [13]

Да дело в том что я выгружаю из оракловой таблицы в dbf и мне желательно менять в dbf


 
Малиновский Владимир   (2003-12-10 15:07) [14]

Ну, так Jet, как сказал sniknik, или на клиенте, как я написал.


 
sniknik   (2003-12-10 15:08) [15]

Johnmen © (10.12.03 13:01) [6]
> 1. Что за функции Left, InStr, Right, Len ? Откуда они ?
бейсик, jet понимает в запросах часть его функций
> 2. Не понял, откуда появился сервер ? Или мы разные вещи под ним понимаем ? :)
на сервер Малиновский Владимир очень тонко намекал. ;о))
jet хотя и для локальных баз но во многом сервер напоминает. (по некоторым описаниям его так и надо воспринимать, подразумевается что таблици не просто открываются а запросы идут к некоторому ядру(серверу) от которого ответ (рекордсет), если так воспринимать сразу отпадает куча вопросов, типа почему BDE открывает таблицу моментально а ADO - Jet после "тормозов" и т.д. ...) ну понимаеш в общем что я в виду имел, да?

Anatoly Podgoretsky © (10.12.03 13:46) [9]
> А откуда взялся Jet, вроде никаких намеков на это
но и возражений не было (а еще лутше точного указания чего используется), а просто dBase, FoxPro может открыватся кучей драйверов/серверов/компонент... не так ли? Anatoly ну ты то возражать не будеш по этому поводу. ;о)

просто не удержался. (показательно насколько это зависит, то что используеш, от категоричного "нет" до "без проблем", и то и то будет правильно разница только в исходных данных)


 
DenK_vrtz   (2003-12-10 15:10) [16]

>zzzrrv (10.12.03 14:49) [11]

в OREACLE это функция translate


 
Малиновский Владимир   (2003-12-10 15:12) [17]

А может, пусть Oracle работает, когда формирует курсор на выгрузку, раз он такой уж крутой?


 
zzzrrv   (2003-12-10 15:14) [18]

>малиновский А запрос для оракловой базы не подскажешь пожалуйста


 
DenK_vrtz   (2003-12-10 15:17) [19]

>zzzrrv (10.12.03 15:14) [18]

ты читать умеешь?! я ж тебе написал какой функцией воспользоваться


 
zzzrrv   (2003-12-10 15:19) [20]

>[18] уточню в смысле запрос на update а не на выгрузку


 
zzzrrv   (2003-12-10 15:20) [21]

хорошо попробую


 
DenK_vrtz   (2003-12-10 15:25) [22]

для тех кто в танке!

update table set
поле = translate(поле,"*","+")


 
Малиновский Владимир   (2003-12-10 15:28) [23]

Не совсем уверен, не помню синтаксиса Translate

На выгрузку:

select b.*, Translate(b.fname,"Россия", "США") as Country from bank b where
b.fname containing "Росс"

На изменения
update bank b
set
b.fname = Translate(b.fname,"Россия", "США")
where b.fname containing "Росс"


 
zzzrrv   (2003-12-10 15:35) [24]

спасибо владимир малиновский & denk_vrtz
у меня получилось заменить символ вот таким запросом
UPDATE dicnomns SET NOMEN_NAME = replace(NOMEN_NAME,"*","+")
большое спасибо еще раз



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

Форум: "Базы";
Текущий архив: 2004.01.09;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.49 MB
Время: 0.01 c
1-25355
mefistofel
2003-12-25 15:52
2004.01.09
КАК из любова файла


6-25493
May
2003-11-10 15:42
2004.01.09
Копирование файлов


1-25324
AndrewK
2003-12-22 14:50
2004.01.09
Как в TVirtualStringTree создать структуру?


1-25363
emergenter
2003-12-25 10:52
2004.01.09
Замерить время выполнения!


6-25494
X-Disa
2003-11-10 13:44
2004.01.09
Потоки





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский