Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Базы данных под .NET > помогите составить SqlCommand


Автор: SquarePants 27.9.2007, 17:45
Код

 private void dataGridView5_CellEndEdit(object sender, DataGridViewCellEventArgs e)
        {
            try
            {
            string update = string.Format("update Rastsenki set tarif = {0} where Stsepka={1}",  
                                          this.dataGridView5.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString(), 
                                          this.dataGridView5.Rows[e.RowIndex].Cells[4].Value.ToString());

            SqlCommand updatecommand = new SqlCommand(update, cn);

            updatecommand.Connection.Open();
            updatecommand.ExecuteNonQuery();
            cn.Close();
        }
        catch { } 
        }


Помогите решить проблемку пожалуйста.
Значения в ячейках таблици имеют тип double и дробная часть отделяется запятой, а SQL Server'у нужно, чтобы точка была, поэтому не хочет выполнять квери.  Что делать в таких случаях?

Автор: Pankon 27.9.2007, 17:54
должно помочь

Код

string update = "update Rastsenki set tarif = @tarif  where Stsepka=@Stsepka";

SqlCommand updatecommand = new SqlCommand(update, cn);

updatecommand.Parameters.AddWithValue("tarif",  Convert.ToDouble(this.dataGridView5.Rows[e.RowIndex].Cells[e.ColumnIndex].Value));
updatecommand.Parameters.AddWithValue("Stsepka",this.dataGridView5.Rows[e.RowIndex].Cells[4].Value.ToString());

Автор: zaver 28.9.2007, 00:26
ну да, обычно используют Parameters вместо FormatString

Автор: SquarePants 28.9.2007, 14:40
Огромное спасибо, помогло smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)