Порядок столбцов табличной переменной в процедуре?
Есть хронь возвращающая табличные данные. Эти данные мы оборачиваем в программе и передаем на вход другой хрони которая принимает табличную переменную. Все очень хорошо, но если порядок столбцов входных данных не будет соответствовать порядку столбцов в принимающей данные хрони, то данные запишутся как есть. Я про то, что в программе, колонки мы именуем так, как они пришли. По идеи sql должен был раскидать данные не по порядку, а по колонкам, но он этого не делает.
Хранимки оперируют данными соответствующие одного и того же типа (таблица), которую при передачи, мы тоже указываем.
В хронимке которая принимает DataSet структуру выполняется операция MERGE.
Самое интересно то, что если SQLщик вызовет ХП Import и полученные данные передаст на вход ХП Export, в которой порядок столбцов нарушен, то данные встанут на свои места. К примеру, может быть конфликт в том, что я пытаюсь встать строку в поле с типов DATE. Естественно SQL выругается. Но ведь я же, в C#, при формирование табличного параметра указываю все столбцы, их имена и тип. Почему хронимка Export не обращает на это внимание?
Писал бы по русски - уделил бы больше внимания.
А тут надо ещё гадать на кофейной гуще о чём речь.
Список неопознанных слов:
хронь, хрони, табличная переменная, хранимки, хронимка.
Если же это баг БД то тогда заполняй issue в MSSQL то иди и заполняй багрепорт им.
Предварительно перечитай документацию по выполняемому Query.
Ах да, не ясно кто чего куда посылает. Никаких примеров.