powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Получить значение поля Description?
6 сообщений из 6, страница 1 из 1
Получить значение поля Description?
    #34386689
faustt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет! Кто знает как получить Description, SQLных полей? Он в какой то таблице лежит?
...
Рейтинг: 0 / 0
Получить значение поля Description?
    #34386724
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если память не подводит, то хранимка sp_getextproperty. Подробности в БОЛ.
...
Рейтинг: 0 / 0
Получить значение поля Description?
    #34386898
faustt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чтото я непойму как этим sp_getextproperty пользоваться.. может кто подскажет?
...
Рейтинг: 0 / 0
Получить значение поля Description?
    #34386985
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Берешь БОЛ, ищешь описание этой процедуры, смотришь описание параметров, в соответствии с этим описанием подставляешь в эти параметры названия таблицы, название поля и название расширенного свойства, запускаешь и получаешь результат.

Добавляются расширенные свойства так:

Код: plaintext
EXECUTE sp_addextendedproperty N'MS_Description', N'Номер по порядку', N'user', N'dbo', N'table', 'Tmp_tmp_post', N'column', N'npp'
...
Рейтинг: 0 / 0
Получить значение поля Description?
    #34387006
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть два вариант: простой и правильный :)
1. Простой - запрос к таблицу SysProperties.
Пример: читаю все описания колонок к таблице @TableName
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
SELECT ISNULL(SC.Name, '')      AS Name,
       ISNULL(SP.Value, '')     AS Obos,
       ISNULL(SC.IsNullAble,  0 ) AS Empty,
       ISNULL(SC.ColStat,  0 )    AS Stat
   FROM SysProperties SP
   INNER JOIN SysColumns SC ON SP.ID = SC.ID AND SP.SmallID = SC.ColOrder
   WHERE OBJECT_NAME(SP.ID) = @TableName AND
         SP.Name = 'MS_Description'
Недостаток: В MS SQL 2005 уже не будет работать - обращение к таблице SysProperties в SQL 2000 было не документированно
2. Использовать встроенную функцию fn_listextendedproperty
Тот же пример, но с использованием этой функции:
Код: plaintext
1.
2.
3.
SELECT ISNULL(b.Name, "") AS Name, ISNULL(c.Value, '') AS Obos, ISNULL(b.IsNullAble,  0 ) AS Empty, ISNULL(b.ColStat,  0 )    AS Stat FROM dbo.SysColumns b (NOLOCK)
	INNER JOIN dbo.sysobjects d (NOLOCK) ON b.ID = d.ID
	LEFT JOIN (SELECT ObjName, CAST(Value AS VARCHAR( 1000 )) AS Value FROM ::fn_listextendedproperty ('MS_Description', 'user', 'dbo', 'table', @TableName, 'COLUMN', default)) c ON b.Name COLLATE SQL_Latin1_General_CP1251_CI_AS = c.ObjName COLLATE SQL_Latin1_General_CP1251_CI_AS
	WHERE d.Name = @TableName AND OBJECTPROPERTY(d.ID, N'IsUserTable') =  1 
В этом запросе много лишнего - взято из готового приложения, не обращай внимание. Главное - это использование функции fn_listextendedproperty
С уважением, Алексей
...
Рейтинг: 0 / 0
Получить значение поля Description?
    #34387638
faustt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Большое спасибо!
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Получить значение поля Description?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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