AccessTr.neT

Tam Versiyon: c# ile access bağlantısı parametre hatası
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
private void btnEkle_Click(object sender, EventArgs e)
{
baglanti = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Application.StartupPath + "\\Ornek.accdb");
komut.CommandText = "insert into Ad(Sinif,Ad,Soyad) Values (@Sinif,@Ad,@Soyad)";

baglanti.Open();
komut.Connection = baglanti;


komut.Parameters.Add("@Sinif", OleDbType.Integer);
komut.Parameters["@Sinif"].Value = Convert.ToInt32(txtSinif.Text.Trim());



komut.Parameters.Add("@Ad", OleDbType.Char);
komut.Parameters["@Ad"].Value = txtAd.Text.Trim();

komut.Parameters.Add("@Soyad", OleDbType.Char);
komut.Parameters["@Soyad"].Value = txtSoyad.Text.Trim();

komut.ExecuteNonQuery();
baglanti.Close();

}

Arkadaşlar yukarda gönderdiğim kodları çalıştırırken "Giriş dizesi doğru biçimde değildi." hatasını alıyorum. Sinif parametresinde hata fırlatıyor. Sizce sorun nerde arkadaşlar nasıl aşabilirim bu sorunu.
Kod:
OleDbConnection baglanti = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Application.StartupPath + "\\Ornek.accdb");

string sqlCumle = "INSERT INTO tabloAdi (alan1,alan2,alan3) VALUES (@isim,@soyad,@adres)";

OleDbCommand cmd = new OleDbCommand(sqlCumle, baglanti);
cmd.Parameters.AddWithValue("@isim",txtAd.Text);
cmd.Parameters.AddWithValue("@soyad",txtSoyad.Text);
cmd.Parameters.AddWithValue("@adres",txtAdres.Text);

baglanti.Open();
cmd.ExecuteNonQuery();

cmd.Dispose();
baglanti.Close();

Exberden yazdım editörde test etme fırsatım olmadı. Try-Catch içine alınırsa iyi olur.