Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
 Свойство "Описание" поля таблицы.  [new]
zvezda_t
Member

Откуда: Урал
Сообщений: 919
Здравствуйте уважаемые программисты, скажите пожалуйста, как получить в процедуре свойство "Описание" которое задаётся каждому полю таблицы и выглядит при создании таблицы student так:

EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Фамилия' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'student', @level2type=N'COLUMN',@level2name=N'lastname'

Мне нужно для поля dbo.student.lastname получить значение описания, которое = "Фамилия".
3 июн 11, 08:07    [10756695]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
Владимир СА
Member

Откуда:
Сообщений: 7915
SELECT value FROM fn_listextendedproperty (NULL, 'schema', 'dbo', 'table', '<Имя таблицы>', 'column', '<Имя поля>')
3 июн 11, 08:40    [10756769]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
zvezda_t
Member

Откуда: Урал
Сообщений: 919
Владимир СА, Круто!!! Работает))))))))
То что нужно! Большое Вам спасибо!

А где про эти функции можно почитать?)
3 июн 11, 08:59    [10756808]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
Владимир СА
Member

Откуда:
Сообщений: 7915
fn_listextendedproperty
3 июн 11, 09:02    [10756815]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
Anatoly Podgoretsky
Member

Откуда:
Сообщений: 62908
zvezda_t
Владимир СА, Круто!!! Работает))))))))
То что нужно! Большое Вам спасибо!

А где про эти функции можно почитать?)

Рекомендую БОЛ и еще рекомендую сделать это настольной книгой разработчика.
3 июн 11, 09:25    [10756883]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
Anatoly Podgoretsky
Member

Откуда:
Сообщений: 62908
Выше ссылка на MSDN - это online версия БОЛ, более свежая, но stand alone удобнее в использование.
3 июн 11, 09:26    [10756888]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
zvezda_t
Member

Откуда: Урал
Сообщений: 919
Anatoly Podgoretsky, спасибо, Вам)
а где взять stand alone?)
3 июн 11, 09:46    [10756995]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
Владимир СА
Member

Откуда:
Сообщений: 7915
zvezda_t
Anatoly Podgoretsky, спасибо, Вам)
а где взять stand alone?)
В SSMS кнопка F1
3 июн 11, 10:07    [10757108]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
zvezda_t
Member

Откуда: Урал
Сообщений: 919
Владимир СА, получилось :)
3 июн 11, 10:30    [10757290]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
Anatoly Podgoretsky
Member

Откуда:
Сообщений: 62908
zvezda_t
Anatoly Podgoretsky, спасибо, Вам)
а где взять stand alone?)

Если не Экспресс, то обычно есть в комплекте, но старый.
Правильнее сделать поиск по Book Online dowload и скачать последний, при том на нужных языках. Все языки интегрируются в единую справку, поэтому пользоваться удобно, всегда можно быстро переключиться на любой язык, прямо по теме.
3 июн 11, 10:30    [10757291]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
zvezda_t
Member

Откуда: Урал
Сообщений: 919
Anatoly Podgoretsky,

Круто! Спасибо, что нацчили :)
3 июн 11, 10:31    [10757300]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
Anatoly Podgoretsky
Member

Откуда:
Сообщений: 62908
Вот пример, когда установлена справка на английском и русском языках одновременно

К сообщению приложен файл. Размер - 8Kb
3 июн 11, 10:37    [10757348]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
zvezda_t
Member

Откуда: Урал
Сообщений: 919
Уважаемые программисты, подскажите мне пожалуйста как написать запрос, чтоб получить
текстовое значение в виде перечислений имён поля(хранятся в свойстве Описание) и значений поля:
Описание_поля1:значение_поля1, Описание_поля2:значение_поля2, Описание_поля3:значение_поля3

например:
Есть таблица
student
lastnamenamefathername

В свойстве Описания, хранятся соответственно значения(Фамилия, Имя, Отчество,и тд)
Хочу получить строку:
"Фамилия: Иванов, Имя: Иван, Отчество: Иванович,..."

У меня получилось, только для фамилии, а как еще имя и отчество добавить и остальные поля? И можно не привязываться к именам столбцов? А все столбцы таблицы перебрать?

SELECT convert(varchar, value) + ': ' + p.lastname as val1 FROM 
fn_listextendedproperty (NULL, 'schema', 'dbo', 'table', 'student', 'column', 'lastname'),
dbo.student as p
3 июн 11, 12:24    [10758169]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
Владимир СА
Member

Откуда:
Сообщений: 7915
zvezda_t
В свойстве Описания, хранятся соответственно значения(Фамилия, Имя, Отчество,и тд)
Хочу получить строку:
"Фамилия: Иванов, Имя: Иван, Отчество: Иванович,..."
...
И этих строк будет, столько сколько записей?
3 июн 11, 12:27    [10758182]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
Владимир СА
Member

Откуда:
Сообщений: 7915
SELECT 'Фамилия: '+ lastname + ', Имя: ' + name + ', Отчество: ' + fathername FROM student ORDER BY lastname
И не выеживаться...
3 июн 11, 12:33    [10758234]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
kDnZP
Member [заблокирован]

Откуда: ★[msg=16399436]★[msg=20850760]
Сообщений: 11289
zvezda_t,
... OUTER APPLY ...
или
... CROSS JOIN ...
, если функция весгда одно значение возвращает.
3 июн 11, 12:34    [10758245]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
kDnZP
Member [заблокирован]

Откуда: ★[msg=16399436]★[msg=20850760]
Сообщений: 11289
Владимир СА
SELECT 'Фамилия: '+ lastname + ', Имя: ' + name + ', Отчество: ' + fathername FROM student ORDER BY lastname
И не выеживаться...

Так не спортивно(((. Всеж-таки уже почти обед пятницы, а чего-то веселого маловато.
3 июн 11, 12:36    [10758260]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
Владимир СА
Member

Откуда:
Сообщений: 7915
kDnZP
Так не спортивно(((. Всеж-таки уже почти обед пятницы, а чего-то веселого маловато.
Кхе... Я уже пообедал (ковыряясь в зубах зубочисткой)
3 июн 11, 12:38    [10758276]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
zvezda_t
Member

Откуда: Урал
Сообщений: 919
автор
И этих строк будет, столько сколько записей?

Владимир СА, хотелось бы)
Это мне вообще для триггера нужно, триггер для команды UPDATE. Я там буду сохранять историю изменений всех полей таблицы, собирать буду из таблицы deleted.

kDnZP,
для разных столбцов функция разное значение возвращает.
если выполнить так, то получим:

SELECT convert(varchar, value) FROM 
fn_listextendedproperty (NULL, 'schema', 'dbo', 'table', 'student', 'column', NULL)

value
Фамилия
Имя
Отчество
3 июн 11, 12:43    [10758316]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
Владимир СА
Member

Откуда:
Сообщений: 7915
zvezda_t
Это мне вообще для триггера нужно, триггер для команды UPDATE. Я там буду сохранять историю изменений всех полей таблицы, собирать буду из таблицы deleted.
И кто мешает в триггере вместо
FROM student
поставить
FROM deleted
Что-то вообще ....
3 июн 11, 12:54    [10758398]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
kDnZP
Member [заблокирован]

Откуда: ★[msg=16399436]★[msg=20850760]
Сообщений: 11289
zvezda_t,
Отак тоже интересно вернет, и что с этого?
SELECT * FROM 
fn_listextendedproperty (NULL, 'schema', 'dbo', 'table', 'student', 'column', NULL)
Повернуть таблицу можно пивотом, либо CASE+агрегаты. По сложению символьных строк (если нужно) - пример в FAQ есть. Осваивайте))).
3 июн 11, 12:57    [10758422]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
zvezda_t
Member

Откуда: Урал
Сообщений: 919
Владимир СА,чтоб заменить таблицу проблемы нет.
Это я к тому - сколько строк одновременно собираюсь обрабатывать. В триггере по одной же записи обрабатывается последовательно.
Просто Вы спросили, я думала это важно.


автор
Повернуть таблицу можно пивотом, либо CASE+агрегаты. По сложению символьных строк (если нужно) - пример в FAQ есть.

kDnZP , что то не понятно(
Хотелось как то по простому сложить названия полей и значения всей таблицы... не получается(
Может как то циклом можно пробежаться по всем полям таблицы?
3 июн 11, 13:03    [10758469]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
kDnZP
Member [заблокирован]

Откуда: ★[msg=16399436]★[msg=20850760]
Сообщений: 11289
zvezda_t, Пивот = PIVOT, FAQ = кнопочка, совсем рядом с кнопкой "Поиск".
3 июн 11, 13:07    [10758501]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
zvezda_t
Member

Откуда: Урал
Сообщений: 919
kDnZP,
прочитала про PIVOT, таблицу я разверну, а как взаимно-однозначное соответствие установить?
Что то как то сложно получается...
3 июн 11, 13:23    [10758662]     Ответить | Цитировать Сообщить модератору
 Re: Свойство "Описание" поля таблицы.  [new]
kDnZP
Member [заблокирован]

Откуда: ★[msg=16399436]★[msg=20850760]
Сообщений: 11289
zvezda_t
kDnZP,
прочитала про PIVOT, таблицу я разверну, а как взаимно-однозначное соответствие установить?
Что то как то сложно получается...

Соответствие чего с чем? Телепаты в запое.
3 июн 11, 13:25    [10758676]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить