2016-03-07 2 views
0

У меня есть столбец Probability типа поплавка в SQL Server, тогда как у меня есть некоторые вычисления в C#, как:Float удвоится в SQL Server

var _Total_Records = 0; 
var _Matchings = 0; 
var _Probability = 0.0; 

_Matchings = Convert.ToInt32(_myCommand_2.ExecuteScalar()); 
_Probability = Convert.ToDouble(_Matchings.ToString())/Convert.ToDouble(_Total_Records); 

Теперь я хочу, чтобы написать эту _Probability значение в таблицу SQL Server, в то время как в WriteToDatabase() метод, т.е.

public static void Write_To_Database(int _id, int _Matched, double _Prob) 
{ 
    var _Result = 0; 
    SqlConnection _con = _cs.GetConnection(); 
    try 
    { 
     string _myUpdate_Command_1 = @"UPDATE AuthorCoAuthorProbability 
             SET Matched_Records = @_Matched_Records 
             Probability = @_Probability 
             WHERE id = @_id"; 

     SqlCommand _myUpdate_Command = new SqlCommand(_myUpdate_Command_1, _con); 
     _myUpdate_Command.Parameters.AddWithValue("@_id", _id); 
     _myUpdate_Command.Parameters.AddWithValue("@_Matched_Records", _Matched); 
     _myUpdate_Command.Parameters.AddWithValue("@_Probability", _Prob); 

     _Result = _myUpdate_Command.ExecuteNonQuery(); 

     _cs.Dispose(); 
     } 
     catch (Exception e) 
     { 
      Console.WriteLine(e.Message); 
     } 
} 

в _Result =_myUpdate_Command.ExecuteNonQuery(); команды:

я получил исключение т.е.

Incorrect syntax near `Probability` 

Есть ли какая-либо неисправность в типе данных? Поскольку тип данных столбца в таблице SQL Server равен float, и я сохраняю double значение _Probability в нем или из-за чего еще есть исключение?

+4

Вы забыли поставить запятую, 'между параметрами в вашем SQL запросе – dotctor

+2

' UPDATE AuthorCoAuthorProbability SET Matched_Records = @_Matched_Records, Вероятность = @_Прозрачность WHERE id = @ _id' – dotctor

+2

Похоже, вы просто пропустили мне запятую ... наверняка это должно быть 'SET Matched_Records = @_Matched_Records, Probability = @ _Probability'. –

ответ

-2

там отсутствует запятая в вашем SQL Заявление

заменить

SET Matched_Records = @_Matched_Records Probability = @_Probability 

с

SET Matched_Records = @_Matched_Records, Probability = @_Probability 
+0

@ Byyo - то же самое было предложено _dotctor_, спасибо! – maliks

Смежные вопросы