Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> не запускается определенна пользователем функция 
:(
    Опции темы
SATYR
Дата 25.5.2005, 08:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 73
Регистрация: 24.5.2005

Репутация: нет
Всего: нет



Под правами администратора создаю функцию
Код

CREATE FUNCTION dbo.MList (@Text ntext)
 RETURNS @result TABLE (field varchar(256))AS
   BEGIN
    DECLARE @BufText nvarchar(4000),
            @ost nvarchar(4000),
            @startpos int,
            @pos int
    SET @startpos=1
    SET @BufText=''
    WHILE datalength(@Text) >= @startpos
     BEGIN
      SET @startpos=@startpos-datalength(@BufText)/2  
      SET @BufText=SUBSTRING(@Text,@startpos,4000)
      SET @pos=CHARINDEX(@BufText,',')

      WHILE @pos > 0
       BEGIN
        INSERT @result(field) VALUES(LTRIM(RTRIM(LEFT(@BufText,@pos-1))))
        SET @BufText=SUBSTRING(@BufText,@pos+1,LEN(@BufText))
        SET @pos=CHARINDEX(@BufText,',')
       END
      SET @startpos=@startpos+4000
     END
     INSERT @result(field) VALUES(LTRIM(RTRIM(LEFT(@BufText,@pos-1)))) 
     RETURN          
   END



Объект в БД создается.
Пытаюсь ее вызвать под тем же пользователем
Код
Select  dbo.MList ('hghghgh,mmmmmm,kkkkkkk,lllll,ppppp,qqqqqq,343,34343434,wewewe,qweqweqwe')



получаю в итоге
Server: Msg 208, Level 16, State 1, Line 31
Invalid object name 'dbo.MList'.

Во что коза рогом уперлась не понимаю!? smile

Это сообщение отредактировал(а) SATYR - 25.5.2005, 08:56
PM MAIL   Вверх
AntonSaburov
Дата 25.5.2005, 12:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Штурман
****


Профиль
Группа: Модератор
Сообщений: 5658
Регистрация: 2.7.2002
Где: Санкт-Петербург

Репутация: нет
Всего: 118



Проверь в какой базе дынных ты работаешь при коннекте. Может ты просто не в ту базу заходишь.
PM MAIL WWW ICQ   Вверх
SATYR
Дата 26.5.2005, 08:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 73
Регистрация: 24.5.2005

Репутация: нет
Всего: нет



Нет коннекчусь я к той БД в кототорой этот обьект создан. Причем в этой БД уже создана другая пользовательская функция с использованием которой нет ни каких проблем.

PM MAIL   Вверх
AntonSaburov
Дата 26.5.2005, 15:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Штурман
****


Профиль
Группа: Модератор
Сообщений: 5658
Регистрация: 2.7.2002
Где: Санкт-Петербург

Репутация: нет
Всего: 118



Ты рефреш делал для списка функций ? Может там ее действительно нет ?
PM MAIL WWW ICQ   Вверх
SATYR
Дата 27.5.2005, 08:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 73
Регистрация: 24.5.2005

Репутация: нет
Всего: нет



Делал. Есть.
PM MAIL   Вверх
AntonSaburov
Дата 27.5.2005, 10:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Штурман
****


Профиль
Группа: Модератор
Сообщений: 5658
Регистрация: 2.7.2002
Где: Санкт-Петербург

Репутация: нет
Всего: 118



Попробуй ее убить и создать заново. Честно говоря никогда с таким не сталкивался.
PM MAIL WWW ICQ   Вверх
SATYR
Дата 27.5.2005, 10:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 73
Регистрация: 24.5.2005

Репутация: нет
Всего: нет



Чесно говоря я это уже пробовал не раз.

Это нормально что в RETURNE она ни чего не возвращает ? Просто я ее делал по образу и описанию одного алгоритма на T-SQL.

PM MAIL   Вверх
SATYR
Дата 8.6.2005, 12:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 73
Регистрация: 24.5.2005

Репутация: нет
Всего: нет



Как говорится сам шучу сам смеюсь. smile
Я нашол в чем у меня косяк... smile
Ежели кому интересно: определенная мной функция возвращает таблицу и следовательно ее необходимо вызывать в предложение FROM , а не в SELECT, как я это пытался сделать. Вот и все !
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "MS SQL"
Akina

Akina

Запрещается!

Публиковать ссылки и обсуждать взлом чего бы то ни было.

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы составления неспецифических запросов рассматриваются здесь
  • Используйте теги [code=sql][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Zloxa, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MS SQL Server | Следующая тема »


 




[ Время генерации скрипта: 0.0472 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.