• 09-04-2008, 17:34:01
    #1
    Üyeliği durduruldu
    Merhabalar,

    'Microsoft.Jet.OleDb.4.0' sağlayıcısı yerel makine kayıtlı değil.
    hatasını alıyorum.
    Sorun nerden kaynaklıyor olabilir.

    private void button1_Click(object sender, EventArgs e)
    {
    String baglantistring = "Provider=Microsoft.Jet.OleDb.4.0;Data Source=kitap.mdb";
    String sorgu = "Select * From kitaplarim";
    OleDbConnection baglanti = new OleDbConnection(baglantistring);
    OleDbDataAdapter verial = new OleDbDataAdapter(sorgu, baglanti);
    DataTable tablo = new DataTable();
    verial.Fill(tablo);
    DataSet veriler = new DataSet();
    veriler.Tables.Add(tablo);
    bindingSource1.DataSource = veriler;
    .....
    }
  • 11-04-2008, 00:29:53
    #2
    Programlamayı bırakalı çok uzun zaman oldu, ama geçen dönem üniversite hoca basit bir ödev vermişti, can sıkıntısından yaptım kodlar aşağıda, örnek olabilir

    Alıntı
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    using System.Data.OleDb;
    namespace Lig
    {
    public partial class Form1 : Form
    {
    public Form1()
    {
    InitializeComponent();
    }
    void yenile()
    {
    OleDbConnection bg1 = new
    OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0 ; Data Source=D:\Data\db.mdb");
    bg1.Open();
    string kl1 = txtno.Text;
    string sorgu1 = "Select * from oyuncutablosu Where takimno like '" + kl1 + "%'";
    OleDbDataAdapter adp1 = new OleDbDataAdapter(sorgu1, bg1);
    DataSet ds1 = new DataSet();
    adp1.Fill(ds1, "onemli");
    this.dataGridView2.DataSource = ds1.Tables[0];
    bg1.Close();
    txtid.Clear();
    txtoyuncu.Clear();
    txttakimno.Clear();
    txtyasi.Clear();


    }
    void yeni()
    {
    OleDbConnection bg1 = new
    OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0 ; Data Source=D:\Data\db.mdb");
    bg1.Open();
    string kl1 = txtno.Text;
    string sorgu1 = "Select * from takimtablosu ";
    OleDbDataAdapter adp1 = new OleDbDataAdapter(sorgu1, bg1);
    DataSet ds1 = new DataSet();
    adp1.Fill(ds1, "onemli");
    this.dataGridView1.DataSource = ds1.Tables[0];
    bg1.Close();
    txttakim.Clear();
    txtno.Clear();
    }

    private void Form1_Load(object sender, EventArgs e)
    {
    // TODO: This line of code loads data into the 'dbDataSet1.oyuncutablosu' table. You can move, or remove it, as needed.
    this.oyuncutablosuTableAdapter.Fill(this.dbDataSet 1.oyuncutablosu);
    // TODO: This line of code loads data into the 'dbDataSet.takimtablosu' table. You can move, or remove it, as needed.
    this.takimtablosuTableAdapter.Fill(this.dbDataSet. takimtablosu);
    dataGridView2.Visible = false;
    label3.Visible=false;
    label4.Visible=false;
    label5.Visible=false;
    label6.Visible = false;
    txtid.Visible = false;
    txttakimno.Visible = false;
    txtoyuncu.Visible = false;
    txtyasi.Visible = false;
    btnekle.Visible = false;
    btnguncelle.Visible = false;
    btnsil.Visible = false;
    }
    private void button2_Click(object sender, EventArgs e)
    {
    OleDbConnection baglanti = new
    OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0 ; Data Source=D:\Data\db.mdb");
    string uptstr;
    uptstr = "Update takimtablosu set " + "takim= '" + txttakim.Text + "' " + "Where id like'" + txtno.Text + "'";
    baglanti.Open();
    OleDbCommand komut = new OleDbCommand(uptstr, baglanti);
    komut.ExecuteNonQuery();
    baglanti.Close();
    yeni();
    }
    private void button1_Click(object sender, EventArgs e)
    {
    OleDbConnection baglanti = new
    OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0 ; Data Source=D:\Data\db.mdb");
    string ekle;
    ekle = "Insert Into takimtablosu (takim)" +
    "Values('" + txttakim.Text + "')";
    baglanti.Open();
    OleDbCommand calistir = new OleDbCommand(ekle, baglanti);
    calistir.ExecuteNonQuery();
    baglanti.Close();
    }
    private void dataGridView1_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
    {
    txtno.Text = Convert.ToString(this.dataGridView1.CurrentRow.Cel ls[0].Value);
    txttakim.Text = Convert.ToString(this.dataGridView1.CurrentRow.Cel ls[1].Value);

    OleDbConnection bg1 = new
    OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0 ; Data Source=D:\Data\db.mdb");
    bg1.Open();
    string kl1 = txtno.Text;
    string sorgu1 = "Select * from oyuncutablosu Where takimno like '" + kl1 + "%'";
    OleDbDataAdapter adp1 = new OleDbDataAdapter(sorgu1, bg1);
    DataSet ds1 = new DataSet();
    adp1.Fill(ds1, "onemli");
    this.dataGridView2.DataSource = ds1.Tables[0];
    bg1.Close();
    dataGridView2.Visible = true;
    label3.Visible = true;
    label4.Visible = true;
    label5.Visible = true;
    label6.Visible = true;
    txtid.Visible = true;
    txttakimno.Visible = true;
    txtoyuncu.Visible = true;
    txtyasi.Visible = true;
    btnekle.Visible = true;
    btnguncelle.Visible = true;
    btnsil.Visible = true;

    }
    private void button3_Click(object sender, EventArgs e)
    {
    OleDbConnection baglanti = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0 ; Data Source=D:\Data\db.mdb");
    string sil;
    sil = "delete from takimtablosu " +
    "where id like '" +
    txtno.Text + "'";
    baglanti.Open();
    OleDbCommand komut = new OleDbCommand(sil, baglanti);
    komut.ExecuteNonQuery();
    baglanti.Close();
    }
    private void dataGridView2_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
    {
    txtid.Text = Convert.ToString(this.dataGridView2.CurrentRow.Cel ls[0].Value);
    txttakimno.Text = Convert.ToString(this.dataGridView2.CurrentRow.Cel ls[1].Value);
    txtoyuncu.Text = Convert.ToString(this.dataGridView2.CurrentRow.Cel ls[2].Value);
    txtyasi.Text = Convert.ToString(this.dataGridView2.CurrentRow.Cel ls[3].Value);
    }
    private void btnekle_Click(object sender, EventArgs e)
    {
    OleDbConnection baglanti = new
    OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0 ; Data Source=D:\Data\db.mdb");
    string ekle;
    ekle = "Insert Into oyuncutablosu (takimno,oyuncu,yasi)" +
    "Values('" + txttakimno.Text + "','" + txtoyuncu.Text + "','" + txtyasi.Text + "')";
    baglanti.Open();
    OleDbCommand calistir = new OleDbCommand(ekle, baglanti);
    calistir.ExecuteNonQuery();
    baglanti.Close();
    yenile();
    }
    private void btnguncelle_Click(object sender, EventArgs e)
    {
    OleDbConnection baglanti = new
    OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0 ; Data Source=D:\Data\db.mdb");
    string uptstr;
    uptstr = "Update oyuncutablosu set " +
    "takimno='" + txttakimno.Text + "'," +
    "oyuncu='" + txtoyuncu.Text + "'," +
    "yasi='" + txtyasi.Text + "'" +
    "Where id like'" +
    txtid.Text + "'";
    baglanti.Open();
    OleDbCommand komut = new OleDbCommand(uptstr, baglanti);
    komut.ExecuteNonQuery();
    baglanti.Close();
    yenile();
    }
    private void btnsil_Click(object sender, EventArgs e)
    {
    OleDbConnection baglanti = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0 ; Data Source=D:\Data\db.mdb");
    string sil;
    sil = "delete from oyuncutablosu " +
    "where id like '" +
    txtid.Text + "'";
    baglanti.Open();
    OleDbCommand komut = new OleDbCommand(sil, baglanti);
    komut.ExecuteNonQuery();
    baglanti.Close();
    yenile();
    }

    private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
    {
    }
    private void button4_Click(object sender, EventArgs e)
    {
    Close();
    }
    }
    }
  • 11-04-2008, 17:38:03
    #3
    Üyeliği durduruldu
    örnek kod için teşekkürler ama burdaki kodlardaki hata lazım. Mantık olarak doğru gözüküyor. Acaba benden kaynaklanan bir hatamı, işletim sistemindemi acaba hata(Vista 64 Bit) veya access dosyasında hata olabilir, sorun nerede acaba onu bulmak istiyorum.
  • 12-04-2008, 10:08:52
    #4
    soyle bisey var projenin app_data klasorundemi o db yoksa accesdemi.ConnectionStringin dogrumu onuda kontrol et Buraya Bakabilirsin.Olmadi wizardlari kullan.
  • 14-04-2008, 17:47:10
    #5
    şöyle bi sorun yaşıyor olabilirsin..
    eğer makinende office 2007 yüklüyse provider değişiyor..
    Microsoft.ACE.OLEDB.12.0 vermen gerekiyor provider'a..
  • 14-04-2008, 19:10:49
    #6
    Üyeliği durduruldu
    Mimoz adlı üyeden alıntı: mesajı görüntüle
    şöyle bi sorun yaşıyor olabilirsin..
    eğer makinende office 2007 yüklüyse provider değişiyor..
    Microsoft.ACE.OLEDB.12.0 vermen gerekiyor provider'a..
    Evet office 2007 yüklü. Saoalsın yardımın için..