Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Ошибка в функции  [new]
Mr_Crow
Member

Откуда:
Сообщений: 24
Доброго дня суток.
Вроде простая функция, но выдаёт ошибку, не могли бы подсказать что я не так сделал. Oracle 10g

CREATE OR REPLACE FUNCTION F1(par1 IN varchar2)
   RETURN boolean
   BEGIN
   if
   ISNUMMERIC(par1)= 1 
        return true;
        else
        return false;
  END F1;


ERROR at line 9: PLS-00103: Encountered the symbol "F1" when expecting one of the following:

if

7. else
8. return false;
9. END F1;
13 авг 12, 09:55    [13002343]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка в функции  [new]
AmKad
Member

Откуда:
Сообщений: 5222
Mr_Crow
Доброго дня суток.
Вроде простая функция, но выдаёт ошибку, не могли бы подсказать что я не так сделал. Oracle 10g

CREATE OR REPLACE FUNCTION F1(par1 IN varchar2)
   RETURN boolean is
   BEGIN
   if
   ISNUMMERIC(par1)= 1 -- что это?
        return true;
        else
        return false;
  END F1;


ERROR at line 9: PLS-00103: Encountered the symbol "F1" when expecting one of the following:

if

7. else
8. return false;
9. END F1;
13 авг 12, 09:58    [13002362]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка в функции  [new]
antonweb
Member

Откуда:
Сообщений: 262
Mr_Crow,

then
13 авг 12, 09:58    [13002368]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка в функции  [new]
Mr_Crow
Member

Откуда:
Сообщений: 24
На сколько я понял эта функция проверяет является ли выражение числовым, если да - возвращает 1, если нет - 0
13 авг 12, 09:59    [13002371]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка в функции  [new]
Mr_Crow
Member

Откуда:
Сообщений: 24
   CREATE OR REPLACE FUNCTION F1(par1 IN varchar2)
   RETURN boolean is
   BEGIN
   if
   (ISNUMMERIC(par1)= 1) than
        return true;
        else
        return false;
   END F1;


ERROR at line 5: PLS-00103: Encountered the symbol "THAN" when expecting one of the following:

* & = - + < / > at in is mod remainder not rem then
<> or != or ~= >= <= <> and or like LIKE2_
LIKE4_ LIKEC_ between overlaps || multiset year DAY_ member
SUBMULTISET_
The symbol "then was inserted before "THAN" to continue.

3. BEGIN
4. if
5. (ISNUMMERIC(par1)= 1) than
6. return true;
7. else


Не могу понять почему не хочет работать с (ISNUMMERIC(par1)= 1) than return true;
13 авг 12, 10:10    [13002415]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка в функции  [new]
tru55
Member

Откуда: СПб
Сообщений: 19790
Ты вообще конструкцию if где-нибудь смотрел, или свободно фантазируешь?
13 авг 12, 10:16    [13002444]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка в функции  [new]
antonweb
Member

Откуда:
Сообщений: 262
Mr_Crow
   CREATE OR REPLACE FUNCTION F1(par1 IN varchar2)
   RETURN boolean is
   BEGIN
   if
   (ISNUMMERIC(par1)= 1) than
        return true;
        else
        return false;
   END F1;


ERROR at line 5: PLS-00103: Encountered the symbol "THAN" when expecting one of the following:

* & = - + < / > at in is mod remainder not rem then
<> or != or ~= >= <= <> and or like LIKE2_
LIKE4_ LIKEC_ between overlaps || multiset year DAY_ member
SUBMULTISET_
The symbol "then was inserted before "THAN" to continue.

3. BEGIN
4. if
5. (ISNUMMERIC(par1)= 1) than
6. return true;
7. else


Не могу понять почему не хочет работать с (ISNUMMERIC(par1)= 1) than return true;

   CREATE OR REPLACE FUNCTION F1(par1 IN varchar2)
   RETURN boolean is
   BEGIN
   if
   ISNUMMERIC(par1)= 1 thEn
        return true;
        else
        return false;
   End If;
   END F1;

тынц
13 авг 12, 10:28    [13002511]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка в функции  [new]
orawish
Member

Откуда: Гадюкино-2 (City)
Сообщений: 15487
Mr_Crow
Доброго дня суток.
..

есть такая штука - энтропия, называется. простейший пример её - это когда для хранения одного байта информации используют два
байта (кило/мего/гыгыгыго..) места. либо, для одного вычисления используют два/десять/сто/.. вычислений.
дык вот тая энтропия растет и растет покуда не наступит тепловая смерть.
а от чего она растет в ИТ-поделках? от того, что деятели делают хрень. и особливо, когда хреново делают хрень
и еще быстрее, когда хреново делают хреновую хрень..
create or replace function f1(par1 in varchar2)
  return boolean is
begin
  return isnummeric(par1)=1;
end;

(и всё равно - хрень )
13 авг 12, 15:27    [13004568]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить