Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Ребята, а что означает :: перед началом функции  [new]
Догдилов Роман
Guest
Может подскажет что обозначает :: перед начало функциии

например

SELECT *
FROM ::fn_listextendedproperty (NULL, 'user', 'dbo', 'table', 'T1', 'column', default)
20 дек 04, 15:54    [1194020]     Ответить | Цитировать Сообщить модератору
 Re: Ребята, а что означает :: перед началом функции  [new]
jimmers
Member

Откуда: Санкт-Петербург - New York City
Сообщений: 5072
BOL
For built-in user-defined functions that return a table, the function name must be specified with a leading double colon (::) to distinguish it from user-defined functions that are not built-in.
20 дек 04, 16:00    [1194049]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: Ребята, а что означает :: перед началом функции  [new]
double_colon
Guest
а например grant select on schema без :: не проходит, и функции ни при чем.
тогда все же что это значит :: и откуда берется,
и на что смотреть в БОЛ, чтоб про :: почитать?
16 мар 12, 15:05    [12260890]     Ответить | Цитировать Сообщить модератору
 Re: Ребята, а что означает :: перед началом функции  [new]
Knyazev Alexey
Member

Откуда: Екб -> Мск
Сообщений: 10233
Блог
double_colon
а например grant select on schema без :: не проходит, и функции ни при чем.
тогда все же что это значит :: и откуда берется,
и на что смотреть в БОЛ, чтоб про :: почитать?


вы подняли топик за 2004ый год, где :: использовалось только в функциях, с 2005ого ещё и в пермишенсах используется...

а что вас именно смущает в :: ?
считайте, что это особенности синтаксиса
16 мар 12, 15:11    [12260944]     Ответить | Цитировать Сообщить модератору
 Re: Ребята, а что означает :: перед началом функции  [new]
double_colon
Guest
не, не то чтоб хотелось в 2004 году покопаться,
просто прежде чем спросить, "в каких случаях в T-SQL используется "::",
порыла поиском на предмет "double colon".
ответа не нашла, а новый топик открывать не стала.
мой вопрос "когда используется или что означает :: в T-SQL"
16 мар 12, 15:24    [12261055]     Ответить | Цитировать Сообщить модератору
 Re: Ребята, а что означает :: перед началом функции  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31948
double_colon
и на что смотреть в БОЛ, чтоб про :: почитать?
Лучьше всего почитать это:
Устаревшие функции компонента Database Engine в SQL Server 2008

BOL
Синтаксис вызова функции «::»
Заменено на SELECT column_list FROM sys.<function_name>().
Например, замените SELECT * FROM ::fn_virtualfilestats(2,1) на SELECT * FROM sys.fn_virtualfilestats(2,1).
17 мар 12, 11:59    [12265491]     Ответить | Цитировать Сообщить модератору
 Re: Ребята, а что означает :: перед началом функции  [new]
double_colon
Guest
не, мне как раз не надо про то, где НЕ НАДО использовать, нужно про то, где надо.
например при выдаче прав на схему надо. почему? чем схема лучше(хуже) например таблицы,
почему именно перед схемой надо это :: указывать, и когда еще надо, в 2008R2?
19 мар 12, 01:10    [12271082]     Ответить | Цитировать Сообщить модератору
 Re: Ребята, а что означает :: перед началом функции  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
double_colon
не, мне как раз не надо про то, где НЕ НАДО использовать, нужно про то, где надо.
например при выдаче прав на схему надо. почему? чем схема лучше(хуже) например таблицы,
почему именно перед схемой надо это :: указывать, и когда еще надо, в 2008R2?
Потому что так захотелось разработчикам MSSQL.
19 мар 12, 01:11    [12271083]     Ответить | Цитировать Сообщить модератору
 Re: Ребята, а что означает :: перед началом функции  [new]
SamMan
Member

Откуда: Moscow
Сообщений: 759
double_colon
именно перед схемой надо это :: указывать, и когда еще надо, в 2008R2

Насколько известно лично мне - более нигде, в 2008-м, R2 - так же, нигде более.
Однако буду рад контр-примерам.
19 мар 12, 12:33    [12272778]     Ответить | Цитировать Сообщить модератору
 Re: Ребята, а что означает :: перед началом функции  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31948
double_colon
не, мне как раз не надо про то, где НЕ НАДО использовать, нужно про то, где надо.
Это просто из любопытства вопрос?

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

Теперь осталось только использование в тех местах, где это надо по синтаксису, например, GRANT.

Соответственно теперь вопрос "про то, где надо" имеет такой же смысл, как и полный список мест, где используются круглые скобки. То есть никакого.
19 мар 12, 16:46    [12275273]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить