![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
SQL - обращение к полю по его имени [D6, MSSQL]
TopLodger © (2004-03-10 18:19:00)Здравствуйте. Подскажите, пожалуйста, можно ли в SQL-запросе использовать что-то такое типа FieldByName('FieldName2') дельфовского. В общем, обращаться к какому-нибудь полю через переменную, в которой храниться имя поля, а не обычное 'SELECT FieldName2FROM myTable'.
TopLodger (2004-03-11 11:02:00) [1]2 SergSuper
Так оно в принципе и есть. На сегодняшний момент нет возможности переделать структуры, но выход из создавшегося положения с помощью вышеуказанного решения ИМХО достаточно грамотный.
SergSuper (2004-03-11 10:33:00) [2]2 TopLodger
Такие желания обычно возникают при неправильно спроектированной БД
TopLodger (2004-03-11 09:55:00) [3]4 ZrenBy Спасибо большое!
ZrenBy (2004-03-10 21:18:00) [4]
use pubs
declare @Field nvarchar(100) set @Field='au_id'
declare @SQL nvarchar(4000)
set @SQL = 'select '+@Field+' from authors'
exec sp_executesql @SQL
И еще
http://www.sql.ru/faq/faq_topic.aspx?fid=104
panov (2004-03-10 20:10:00) [5]var
FName: String;
Res: String;
begin
FName := 'FieldName2';
Query1.SQL.TExt := 'SELECT '+FName+' FROM MyTable';
Query.Open;
Res := Query1.FieldByName(FName).AsString;
TopLodger (2004-03-10 19:51:00) [6]Как после обычного? Есть необходимость так оформить запрос:
DECLARE @FieldName varchar(10)
SET @FieldName = 'FieldName2'
SELECT FieldByName(@FieldName)
FROM myTable
Вот я и спрашиваю - есть ли эквивалент FieldByNameв SQL?
Mike Kouzmine (2004-03-10 19:46:00) [7]Можно. После обычного 'SELECT FieldName2 FROM myTable'.