Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 имена полей таблицы в выходных параметрах SP  [new]
GFHJKM
Guest
Всем всего и много.
Уважаемые знатоки сиквела, подскажите ход мысли в SP , как присвоить переменным имена полей, после запроса
Я так понимаю - должны быть системные процедуры, с помощью которых можно получит имена полей полученной после запроса таблицы данных.?
Спасибо
19 янв 05, 09:18    [1255767]     Ответить | Цитировать Сообщить модератору
 Re: имена полей таблицы в выходных параметрах SP  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
Правила
19 янв 05, 09:23    [1255784]     Ответить | Цитировать Сообщить модератору
 Re: имена полей таблицы в выходных параметрах SP  [new]
GFHJKM
Guest
какой пункт правил я нарушил ?
прошу подробнее, а не так, лишь бы откинуть вопрос
PS встречал и более глупые вопросы
19 янв 05, 09:53    [1255897]     Ответить | Цитировать Сообщить модератору
 Re: имена полей таблицы в выходных параметрах SP  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
А вам кажется, что ваш вопрос предельно прозрачен и ясен? Например, что вы поразумеваете под SP - хранимую процедуру, сервиспак...
Перевормулируйте вопрос.
19 янв 05, 09:57    [1255913]     Ответить | Цитировать Сообщить модератору
 Re: имена полей таблицы в выходных параметрах SP  [new]
Glory
Member

Откуда:
Сообщений: 104760
- Результат запроса возвращается клиенту.
- Сервер нигде ни хранит никаких метаданных о структуре возвращаемого набора.
- Вместо возврата набора можно присвоить значения одной записи в переменные

DECALRE @x int, @y sysname
SELECT @x=id, @y=name FROM sysobjects

PS встречал и более глупые вопросы
Классная отговорка
19 янв 05, 09:57    [1255917]     Ответить | Цитировать Сообщить модератору
 Re: имена полей таблицы в выходных параметрах SP  [new]
GFHJKM
Guest
Большое спасибо за ответ
1. Вы правы - надо было более прозрачно ответить
sp = xп
PS: вопрос глупый - так это я про себя )

Удачи )
19 янв 05, 10:08    [1255951]     Ответить | Цитировать Сообщить модератору
 Re: имена полей таблицы в выходных параметрах SP  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
Если все-таки нужны имена колонок какой-либо существующей таблички, то можно воспользоваться ситемным представлением INFORMATION_SCHEMA.COLUMNS или процедурой sp_columns.
Как всегда - все подробности в BOL.
19 янв 05, 10:13    [1255984]     Ответить | Цитировать Сообщить модератору
 Re: имена полей таблицы в выходных параметрах SP  [new]
LexusR
Member

Откуда: Novosibirsk
Сообщений: 1873
для произвольного запроса можно получить данные по колонкам
через процедурку
create procedure upCursorColumns(@Statement nvarchar(4000)) 
as
set nocount on 
exec('DECLARE abc CURSOR GLOBAL KEYSET FOR '+@Statement+' open abc')
SELECT ordinal_position, column_name, 
       dataType = cast(case when data_type_sql in (175,
239, 231, 167, 165, 173) then st.[name]+'('+cast(column_size as varchar)+')'
when data_type_sql in (106, 108) then st.name+'('+cast(column_precision as
varchar)+','+cast(column_scale as varchar)+')'else st.name end as varchar(100))
FROM master.dbo.syscursorrefs scr,
     master.dbo.syscursorcolumns scc,
     master.dbo.systypes st 
WHERE 	scr.cursor_scope = 2
    and scr.reference_name = 'abc' 
    and scr.cursor_handl = scc.cursor_handle
    and st.xusertype=data_type_sql
ORDER BY ordinal_position
CLOSE abc
DEALLOCATE abc

exec upCursorColumns 'select 1 as [ID],''Name'' as MyName, 3.2 as [Value]'

19 янв 05, 10:53    [1256190]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить