Это немного долгой и запутанной истории, почему я должен это сделать, но я буду получать строку запроса, который я затем выполняющийся с этим кодомSQL Server: установить все псевдонимы столбцов в динамическом запросе
EXECUTE sp_ExecuteSQL
Мне нужно установить псевдонимы всех столбцов на «значение». Там может быть переменное число столбцов в запросах, которые пропускают, и они могут быть все виды типов данных, например
SELECT
Company, AddressNo, Address1, Town, County, Postcode
FROM Customers
SELECT
OrderNo, OrderType, CustomerNo, DeliveryNo, OrderDate
FROM Orders
ли это возможно и относительно просто сделать, или мне нужно получить псевдонимы, включенные в SQL-запросы (было бы проще не делать этого, если его можно избежать и сделать, когда мы обработаем запрос)
--- Редактировать --- В качестве примера, вывод из первый запрос будет
Company AddressNo Address1 Town County Postcode
--------- --------- ------------ ------ -------- --------
Dave Inc 12345 1 Main Road Harlow Essex HA1 1AA
AA Tyres 12234 5 Main Road Epping Essex EP1 1PP
I wan т это будет
value value value value value value
--------- --------- ------------ ------ -------- --------
Dave Inc 12345 1 Main Road Harlow Essex HA1 1AA
AA Tyres 12234 5 Main Road Epping Essex EP1 1PP
Таким образом, каждый из столбца имеет псевдоним «значение»
я мог бы сделать это с
SELECT
Company AS 'value', AddressNo AS 'value', Address1 AS 'value', Town AS 'value', County AS 'value', Postcode AS 'value'
FROM Customers
, но было бы лучше (это позволит сэкономить дополнительные сложности в других шагах в цепочке процессов), если нам не пришлось вручную псевдонизировать каждый столбец SQL, который мы загружаем в этот раздел процесса.
Что касается проблемы XY, это крошечный раздел в очень большой цепочке процессов, это потребует страниц, чтобы подробно объяснить весь процесс - по сути, мы берем код из наших триггеров базы данных и помещаем его в динамическая процедура; то у нас будут интерфейсы, что пользователи получат доступ к «редактированию» операторов SQL, вызываемых триггерами, и затем динамически будут передавать результаты в другие системы. Он работает, если мы вручную перейдем к SQL, но он был бы более аккуратным, если бы мы могли прокормить чистый SQL в этот процесс, а затем применить псевдонимы при обработке SQL - это будет держать нас СУХОЙ, для начала.
Пожалуйста, дайте нам пример, потому что это не совсем понятно, что вы хотите усвоить. – PeterRing
Это звучит как проблема XY. Http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem – Anon
'column to" value "' Пожалуйста, поделитесь некоторыми примерами, что вы хотите достичь, например, если компания является «C1», тогда вы хотите, чтобы имя столбца было C1 .., но что, если есть две или более строк, выбранных с разными названиями компаний ? – Deepshikha