powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Глобальные переменные ?
6 сообщений из 6, страница 1 из 1
Глобальные переменные ?
    #32009360
DennisL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть ли возможность определить на сервере глобальные переменные и как это делать ?

Задача у меня такая что надо использовать в различных sp вызываемых разными пользователями,
около 15-20 констант ... они могут маняться раз в пару лет ... тооретически можно было сразу в sp использовать ... но вроде хочестся универсальности некоторой ...
можно конечно завести таблицу с названими констант и их значениями и в начале каждой sp которая их использует считывать необходимые значения в локальные переменные
но хочеться возможности как в обычных языках програмирования определить голобальные константы и просто их везде использовать ...
можно ли это сделать вообще, и как если можно ?

P.S.Использую SQL 7 возможно и 2000 будет скоро ...
...
Рейтинг: 0 / 0
Глобальные переменные ?
    #32009362
Фотография Garya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
См. в BOL "Create default"
...
Рейтинг: 0 / 0
Глобальные переменные ?
    #32009363
GreenSunrise
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пользовательских глобальных переменных в сиквеле нет.
Можно поступить следующим образом (особенно удобно это будет на 2000) - заводим таблицу
create table constants(
name sysname,
value sql_variant
)
И пишем функцию, которая будет возвращать значение константы по ее имени.
В 7.0 сделать такой механизм затруднительно из-за отсутствия типа sql_variant. Ну и без функций неудобно будет работать.
Правда, скорость работы может не устроить - во-первых, выборка из таблицы, во-вторых, преобразование типов. Так что если эти константы используюся во view, то это может стать проблемой.
...
Рейтинг: 0 / 0
Глобальные переменные ?
    #32009377
GreenSunrise
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Create default - это не то же самое, что константа в обычном программерском понимании. Default можно приклеить к полю таблицы, но нельзя использовать в виде select const1. То есть ценность default при использовании процедур или в аналогичных ситуациях равна нулю.
...
Рейтинг: 0 / 0
Глобальные переменные ?
    #32009423
Фотография Garya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GreenSunrise прав (или права?). Я невнимательно прочитал вопрос.
...
Рейтинг: 0 / 0
Глобальные переменные ?
    #32009481
Fompro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ради Бога, зачем "в начале каждой sp которая их использует считывать необходимые значения в локальные переменные"? Ну, "широкая" таблица из одной записи, вот и работайте как с таблицей. На 2000-ке, наверное, просто скаляры.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Глобальные переменные ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]