Хорошо, поэтому я использую C # для вставки информации в таблицу на сервере базы данных.Он создает команду SQL на основе набора операторов if, которые к ней добавляются.У меня проблема с получением инструкции, которая будет создана чисто.Я понимаю, что для объединения операторов вставки в SQL Server мы используем:
INSERT INTO myTable
SELECT 'value1', 'value2'
UNION ALL
SELECT 'value3', 'value4'
UNION ALL
SELECT
etc
Моя проблема состоит в том, чтобы упорядочить их так, чтобы оператор работал независимо от того, какие операторы он передает.Например,
function()
string sqltext = "INSERT INTO myTable"
if(cond1)
{ sqltext=sqltext + "SELECT 'v1', 'v2' UNION ALL" }
else if (cond2) {
sqltext = sqltext + "SELECT 'v3', 'v4' UNION ALL" }
В этом случае, если какое-либо условие возвращается само по себе, оператор не будет работать, потому что оператор закончится в UNION ALL.Я надеюсь это имеет смысл.Мысли?