У меня есть в общей сложности три команды sql, работающие на одном соединении. Когда запрос выполняется, все работает отлично, за исключением одной крошечной вещи. UNION SELECT в последней команде не будет прикреплять «ТЕКСТ» в конце последнего оператора.union select работает над первой командой, но не второй?
SqlCommand commandtwo = new SqlCommand("SELECT PID = RIGHT(REPLICATE('0',8) + CAST(PID AS VARCHAR(8)),8) + ',' FROM dbo.MDRMASTER WHERE PARENTPID = @PARENTPID UNION SELECT 'TEXT'", con);
SqlCommand commandthree = new SqlCommand("SELECT INST = INST + ',' FROM dbo.MDRMASTER WHERE PARENTPID = @PARENTPID UNION SELECT 'TEXT'", con);
Я нахожу это очень странным, потому что commandtwo работает отлично. Я также нашел, что это странно, что для того, чтобы запятые работать в commandthree, я должен был написать
= INST + ','
вместо просто
+ ','
Так почему у меня возникают эти странные события? Или, поскольку я считаю себя новичком, что это правило, я, очевидно, не знаю? Я использую SQL Server 2008 R2 Большое вам спасибо.
Как инициализируется @PARENTPID? –
Что вы подразумеваете под «вместо« + »,« »? –
PARENTPID - это параметр, который проходит через значение текстового поля. @Eben, если вы заметили, что в commandtwo только добавление + ',' разделяет значения запятыми, тогда как в команде три просто добавление + ',' не будет работать, я вынужден правильно = INST + ',' для того, чтобы запятые работали , Я отправлю код, как только смогу. Благодарю. – javasocute