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

Вниз

Парсинг строк - SQL   Найти похожие ветки 

 
помаранчевий Жук   (2004-11-15 15:34) [0]

Вобщем, такая задачка. В поле комментария вставляется строка (не моей программой, внешним модулем), содержащая в закодированном виде некоторые параметры, нужные для расшифровки в моей программе. Как это можно реализовать? СУБД используются Oracle и Firebird 1.5.


 
Vlad ©   (2004-11-15 15:37) [1]


> Как это можно реализовать?

чего реализовать-то? Если честно, ничего не понял :-(


 
помаранчевий Жук   (2004-11-15 15:41) [2]

Пропарсить строку. Это д.б. или процедура, или триггер, которая, распарсив строку, запишет некоторые данные в связанную таблицу


 
Соловьев ©   (2004-11-15 15:43) [3]


> Firebird 1.5.

udf


 
Reindeer Moss Eater ©   (2004-11-15 15:44) [4]

plsql


 
Sergey13 ©   (2004-11-15 15:45) [5]

[2] помаранчевий Жук   (15.11.04 15:41)
И какой этап вызывает трудности? Собственно парсинг или запись его результата?


 
помаранчевий Жук   (2004-11-15 15:50) [6]

Собственно парсинг.

> udf

И что мне это даст?

> plsql

Это понятно, что не tsql


 
Reindeer Moss Eater ©   (2004-11-15 15:52) [7]

Это понятно, что не tsql

Если понятно, то применяй.


 
Соловьев ©   (2004-11-15 15:54) [8]


> И что мне это даст?

то что будет там реализовано - в даном случае парсинг строки


 
помаранчевий Жук   (2004-11-15 15:59) [9]

Мда, как всегда проще сходить на sql.ru :(


 
sniknik ©   (2004-11-15 16:34) [10]

> Мда, как всегда проще сходить на sql.ru :(
балуют они вас там... отучают думать (видать боятся конкуренции ;о)))

но неужели на такой вопрос ответят? ведь действительно непонятно ничего. или они телепата в штат взяли?


 
помаранчевий Жук   (2004-11-15 16:47) [11]

Ну пример. В комментарии пишется
#70000124#70000541#1#245.2
что означает такое
70000124 - код статьи финплана
70000541 - код подразделения
1 - тип платежа
245,2 - НДС
Причем комментарий берется из выписки клиент-банка, которую я парсирую и вношу в базу. Так как кто-то придумал писать кодированные данные в комментарий, то нужно с этим бороться. Менять программу не хочу. Как распарсить это на сервере?


 
msguns ©   (2004-11-15 17:02) [12]

>помаранчевий Жук   (15.11.04 16:47) [11]
>Ну пример. В комментарии пишется
#70000124#70000541#1#245.2
что означает такое
70000124 - код статьи финплана
70000541 - код подразделения
1 - тип платежа
245,2 - НДС

Офигительно !
Ну ты пропарсишь, допустим. В через месяцок банковские "умельцы" вжарят в комментарий чего-нить еше и что ты бушь делать ?


 
Соловьев ©   (2004-11-15 17:09) [13]


> 70000124#70000541#1#245.2

Класный банк :))) Наверное про нормализацию никто никогда и не слышал :)
Ужас...


 
Reindeer Moss Eater ©   (2004-11-15 17:21) [14]

INSTR и SUBSTR.
Вот и весь парсинг.


 
помаранчевий Жук   (2004-11-15 17:26) [15]

SUBSTR - это часть SQL?


 
Reindeer Moss Eater ©   (2004-11-15 17:28) [16]

В PLSQL тоже доступна


 
Vlad ©   (2004-11-15 17:28) [17]


> помаранчевий Жук   (15.11.04 17:26) [15]
> SUBSTR - это часть SQL?

Это часть pl-sql, а так же стандартная udf в Interbase


 
помаранчевий Жук   (2004-11-15 17:31) [18]

Ну и как ней пользоваться, если размеры заранее не определены.


 
Reindeer Moss Eater ©   (2004-11-15 17:31) [19]

А как ты в Паскале пользуешься Pos если размеры не определены?


 
помаранчевий Жук   (2004-11-15 17:34) [20]

Ну я знаю как организовать конечный автомат в Delphi, а как в SQL


 
Reindeer Moss Eater ©   (2004-11-15 17:36) [21]

А я Петьку из двадцать шестой знаю и Нинку из тридцатой.


 
Alex_Bredin ©   (2004-11-16 10:37) [22]

если закладываться на порядок параметров, то можно парсить так:
TStringList.Delimiter:="#";
TStringList.DelimitedText:=твой комментарий


 
Reindeer Moss Eater ©   (2004-11-16 10:39) [23]

Осталось только попросить Ларри Эллисона реализовать класс TStringList в PL/SQL


 
Alex_Bredin ©   (2004-11-16 10:47) [24]


> Reindeer Moss Eater ©   (16.11.04 10:39) [23]


имеется в виду udf


 
Reindeer Moss Eater ©   (2004-11-16 10:48) [25]

Я и говорю, что в FB/IB проблема решена, остается уломать Оракл сделать поддержку TStringList


 
Danilka ©   (2004-11-16 11:27) [26]

[20] помаранчевий Жук   (15.11.04 17:34)
> Ну я знаю как организовать конечный автомат в Delphi, а
> как в SQL

Причем здесь конечный автомат??? Обычная строка с разделителем достаточно одного цикла.
Или проблемы с циклами? (Циклы - это не те, которые женские, это немного другие..) :))


 
NAlexey ©   (2004-11-16 11:33) [27]

Эээээх.... Весело тут у вас.



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

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

Наверх





Память: 0.63 MB
Время: 0.061 c
14-1101124657
menart
2004-11-22 14:57
2004.12.12
У кого есть delphi7


1-1101738973
Гриша
2004-11-29 17:36
2004.12.12
мемо


3-1100446917
kein
2004-11-14 18:41
2004.12.12
копирование из базы в базу


3-1100082487
Pertovsky
2004-11-10 13:28
2004.12.12
Десятичные разряды.


4-1099032593
WaS
2004-10-29 10:49
2004.12.12
Как определить активен ли сейчас рабочий стол????





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский