Я пытаюсь отправить TVP из nodejs в хранимую процедуру SQL-сервера вместе с другими параметрами.Когда хранимая процедура выполняется, выдается ошибка.
Когда я пытаюсь выполнить запрос с сервера SQL, он работает нормально.Я ожидаю, что произойдет то же самое.
> DECLARE @return_value int DECLARE @pricelist LocationPricingTableTyp
> DECLARE @primKey uniqueidentifier SET @primKey = NEWID(); INSERT INTO
> @pricelist SELECT @primKey, 55676123, 12.0, 15.0,'young','summary';
>
> EXEC @return_value = [dbo].[sp_LocationMaster_Create] @LocationId =
> 55676123, @language = 'aen', @IsActive = 1, @TblLocationPrice =
> @pricelist SELECT 'Return Value' = @return_value
>
> GO
Когда я выполняю хранимую процедуру с узлаjs
const LocationPricingTableTyp = new sql.Table()
LocationPricingTableTyp.columns.add('LocationId', sql.Int)
LocationPricingTableTyp.columns.add('LowestPrice', sql.Decimal)
LocationPricingTableTyp.columns.add('HighestPrice', sql.Decimal)
LocationPricingTableTyp.columns.add('PriceType', sql.VarChar)
LocationPricingTableTyp.columns.add('Summary', sql.Text)
// Add rows
LocationPricingTableTyp.rows.add(777,12.0,15.0,'young','summary')
SQLrequest.input('LocationId' ,sql.Int ,itemobj.baseId)
SQLrequest.input('Keywords' ,sql.Text ,itemobj.Keywords)
SQLrequest.input('IsDeleted' ,sql.Bit ,itemobj.)
SQLrequest.input('IsActive' ,sql.Bit ,true)
SQLrequest.input('TblLocationPrice' ,LocationPricingTableTyp)
SQLrequest.execute("sp_Location_Create", (err, recordset) => {
if (err){
console.log(Not added due to following error')
console.log(err)
}else{
// send records as a response
console.log('successfully added to Master');
}
});
Следующая ошибка вызвана.
"Обнаружена неверная сортировка потока табличных данных (TDS) "
Я использую NodeJS: 8.9.4 с mssql 5.6.0.В чем может быть ошибка?