Ühenda Microsoft Access andmebaasi ja Täitke DataGridView

Nagu eelmises postituses , palju sensilla ning väga vähe koodi, näeme, kuidas ühendada in Visual Basic. net koos andmebaasi faili Microsoft Access ja seejärel laadida andmed ühest plaadist DataGridView neid täis.

Esimene asi, mida teha on importida 2 nimeruumid nagu näitavad järgmised:

 Import System.Data
 Import System.Data.OleDb

Selles näites me kasutame vormi nuppu (Button1) ja DataGridView (DataGridView1). Aastal click korral Button1 koopia järgmine kood ja nimi andmebaasi. Mdb ja tabeli nimi avalduses VALI ), nii et kõik toimib hästi.

 Dim CNN Nagu New OleDbConnection ("Provider = Microsoft.Jet.OLEDB.4.0; Andmeallikas = C: \ myBaseAccess.mdb; User Id = admin, password =;")

 Dim da Nagu New OleDbDataAdapter ("SELECT * FROM Tooted", CNN)
 Dim ds Nagu New DataSet

 da.Fill (DS)

 DataGridView1.DataSource = ds.Tables (0)

Noh, tegelikult ei ole palju seletada ... saate luua ühendus (CNN), siis DataAdapter (da) mille parameeter avaldus andmete toomiseks ( SELECT ) ja ühendus kasutada (CNN). Kui soovite valida ainult teatud dokumente on vaja lisada tingimus WHERE valige avaldus.

Aastal järgmised read me jätame mõned lühikesed definitsioonid, kui keegi teist oli vaja ja rohkem teada erinevaid võimalusi luua ühenduse Microsoft Access Ma jätan ka järgmist linki: http://www.connectionstrings.com/access

DataAdapter

Esindab kogum SQL käsud ja andmebaasi ühendus, mida kasutatakse täitke DataSet ja uuendada andmeallikas.
DataAdapter toimib sillana DataSet ja andmeallika allalaadimise ja andmete salvestamiseks. Toimida sillana, DataAdapter Täitke meetod omistab muutmise andmed DataSet sobitada andmeallikas ning määrab Update meetod, mis muudab andmeid andmeallikas, mis langeb kokku nende DataSet.

DataSet

Esindab vahemälu andmeid. See on oluline osa ADO.NET arhitektuur. DataSet koosneb kogumik DataTable objektid.

DataTable

Esindab andmed tabelisse mälu.
DataTable on keskne eesmärk ADO.NET raamatukogu. Seas objektide, mis kasutavad DataTable ja DataView DataSet lisada.

Kui juurdepääsu DataTable esemeid, peate meeles pidama, et need on tõstutundlikud tinglikult. Näiteks, kui 1 DataTable nimega "mydatatable" ja muud "Mydatatable", string, mida kasutatakse otsida üks tabelid peetakse tõstutundlik. Kui aga on olemas "mydatatable", kuid ei "Mydatatable" peetakse otsisõna ei ole tõstutundlikud. DataSet võib sisaldada 2 DataTable objektid, mis on sama tablename vara väärtus ja erinevaid väärtusi Nimeruum vara.

26 Responses to "Ühenda Microsoft Access andmebaasi ja Täitke DataGridView"

  1. [...], Et kirjutada näiteks ühendamiseks SQL Server ja Microsoft Access Connection ma mõistsin, et kuigi need kaks liiki enim kasutatud andmebaasidest, kui [...]

  2. Uruguay carla ütleb:

    sest tõde oli väga kasulik. sest mul on vaja koodi võimalikult lihtne, sest mul oli probleeme laadimise tabelis juurdepääs datagrid ja kõik koodid Üritasin see oli ainus asi, mis tõi mulle üle laua ja nii vähe koodi
    Mis tõde ja õnnistused
    Carla

  3. Edwin ütleb:

    Mul oli palju tänu! vaatan isegi kui ma tahtsin teada, kuidas filtreerimine riigi, et leida eelkõige rekord.

  4. Oswaldo ütleb:

    Tervitused .. väga hea oma artikkel ja lehele ... ma läksin küsima, kuidas puhastada DataGridView1 iga kord, kui klõpsate nuppu päringu ja vaadata andmeid, kuid ma arvan, et määrata, kui mitte parem, kuid vähemalt ma töötasin . Ainuke asi mida ma ei olnud lisada "ds.Clear ()"
    Nii et:
    ds.Clear ()
    da.Fill (DS)
    DataGridView1.DataSource = ds.Tables (0)

    Nüüd kui ma tekstikasti, kus kirjutada nimi stendi näitab ainult tulemuste leida DataGrid ..

    • Eliisa ütles:

      A. - puhastamiseks: ok mida sa teed, sa võiksid ka ei DataGridView1.DataSource = Nothing
      2. - Et kuvada ainult andmeid, mis vastavad tekstikasti kord on sama, ainus asi, et muutused on SELECT avaldus, mis täidab otsing. Näiteks: "select * from Töötajad WHERE nimi LIKE '%" & TextBox1.Text & "%" "

      Õnn

  5. Oscar ütleb:

    Olen töötanud koos Visual Studio 6 ja ma üritan tööd Visual Studio 2008. Ma tegin, mida manuaal ütleb, et kuvada andmeid tabeli DataGridView, edutult. DataGridView kuvatakse, kuid mitte andmeid. Kui koormuse korral vormi automaatselt paigutatud rida koodi asustada andmeid, kuid ilmselt see ei tööta. Keegi teab, kui see on teada probleem?

  6. Maxi ütleb:

    Asjaolu, et see töötaks mind kuid ma ei tööta minu jaoks on insert uuendada ja kustutada ... isegi conexionstring sond ja sqlcomand .. ja seda mitte teha ..
    Mingeid ideid?
    Suur aitäh.

    • Maxi ütleb:

      Poisid ma vastata ise.
      sisestada:
      Nagu New OleDbDataAdapter Dim daagregar ("lisada tellimusi (IDPLATO, Kogus, IDMesa, KliendiId, kuupäev) väärtused (" "& TxtCodigo.Text &" "," "& TxtCantidad.Text &" "," "& TxtMesa.Text & "', '0', '8 ')", CNX)
      daagregar.Fill (dsPedidos)

  7. Jorge ütleb:

    hol nagu ma tahaksin teada, kui mina Andmete sisestamiseks DataGridView kuid kui raha on olemas ja saadab sõnumi, et on juba olemas, sest TERVITUSED

  8. Gabriel ütles:

    Tänulik kood ...

    Kas kuidagi taastub andmete Gridview ja panna neid PDF-faili?.

    Tervitused Tšiili

  9. tttony ütleb:

    Tere, ma ühendada Access 2007 DB, C #. NET siin kõik korras, kuid mul on tabel, mis on kolm tegevusvaldkonda kuupäevade ja ma tahan anda vorming ja mul on kaks võimalust:

    1) Pärast DataGridView formaadis iga väli, mis sisaldab kuupäeva

    2) Kas see päring:

    SELECT TOP 20 * Format ([buy_date], "Long Date") & "" & Format ([buy_date] "Short Time") AS [buy_date] FROM ORDER BY id DESC testimine

    Probleemiks on see seisukoht on, et ta viib [buy_date] asendist 4-2 ja ma pean kirjutama rohkem koodi järjekorras ja et ma ei taha

    Regards

  10. Eliisa ütles:

    Ma saan järgmine viga
    Ei leidnud paigaldatava ISAM.
    da.Fill (DS)
    Ma ei kõike on miks?

  11. Pablo_la31 ütleb:

    Hi! Ma näen ma ühendust BD 2003 in vb.net juurdepääsu sealt tuua kõik andmed 3 tabelite DataTable kõik veerud 3 lauad, nüüd ma tahan q on ekraani DataGridView kuid mitte kõik veerud vaid mõned .. kui ma ei saa seda teha?

  12. Jordi ütleb:

    Aitäh, väga lihtne seletus ja väga praktiline, Thanks

  13. Daniel ütleb:

    Suurepärane post, väga abivalmis ja väga detailne, lihtsalt ei teadnud, oli see nii lihtne.

    Tänan

  14. Misael ütleb:

    tere! suur kuju ja väga secilla
    Küsimus, kui täidate DataSet DataGridView1 Kuidas ma saaksin väärtus rakkude, st kui väärtus kisiera DataGridView1 edasi veerg 1 reas 1?

  15. Claudio ütleb:

    Tere;
    Ma kasutan Visual Basic 2008 Microsofty ja otseteed nagu andmebaas .. kirjutada sama kood, mis on postitatud seda lehte ma saan viga rida, mis ütleb: da.Fill (DS)

    viga ei kontrolli System.Data.OleDb.OleDbException
    ErrorCode = -2147467259
    Teade = "Ei ole kehtiv filename."

    Võiks mind aidata?
    Tänan teid ...

  16. tato25 ütleb:

    hi all vajadust aidata täitmiseks rekord andmed link ühendus ja läheb hästi, kuid siis kõrge saan on see kood
    ühendus:
    Formclientes_Load Private Sub (ByVal saatja Nagu System.Object, ByVal E System) käepidemed MyBase.Load
    Dim ühendus Nagu OleDbConnection
    Seoses = New OleDbConnection ("Provider = Microsoft.Jet.OLEDB.4.0; andmeallikas = C: \ proyectovb.net \ tesis.mdb")
    Nagu DataSet Dim dsCustomers
    As String Dim consultaclientes
    consultaclientes = "select clientes.dni, clientes.apellido klientidele"
    Nagu New OleDbDataAdapter Dim daclientes (consultaclientes, ühendus)
    dsCustomers = Uus DataSet ()
    daclientes.Fill (dsCustomers, "kliendid")
    Dgvclientes.DataSource = dsclientes.Tables ("kliendid")

    Lisa nupp:
    Nagu DataTable Dim TABLACLIENTES = New DataTable ("Kliendid")
    Nagu DataRow Dim REGISTROCLIENTES = TABLACLIENTES.NewRow
    REGISTROCLIENTES ("dni") = Me.TextBox1.Text
    REGISTROCLIENTES ("NAME") = Me.TextBox2.Text
    TABLACLIENTES.Rows.Add (REGISTROCLIENTES)
    Ma kasutan täita nagu ma teha uus kõrge, kuid 1. Kontrolli, kas kirje on juba olemas
    Ma eeldan, mõned vastuse mõned solidaarsust

  17. Borro ütleb:

    Big Beast!
    Olin juba süütas tabs

    Ma kasutan VB6 ja vb hiljutine muutus 2010

    TÄNU!

  18. Jeysson ütleb:

    Mulle tundub, SEE EI OLE CODE FOR VB 2010
    PORFAVOT saab õpetada keegi teab
    ÕPI QUISIEA kiiresti!

  19. Rodhe Gav ütleb:

    Suurepärast panust. Õnnitleme valas mulle palju. Ma iniciandome maailmas VB.NET. Kuigi ma olen piisavalt programmeerimine, kuid sa alati vaja näiteid nii et kui muudad programmeerimiskeelt. Regards

  20. John ütleb:

    Ma nägin midagi lahti sellest, aga ma tahan lisada vormi andmed andmebaasi juurdepääsu ja ma ei saa, kui keegi saaks aidata sooviks

    osas

  21. Amaliam ütleb:

    Mul oli väga kasulik, aitäh!

  22. Chilon ütleb:

    Komo pesakond kapo, vaata mul on küsimus, ma programmeerimine VB. Net 2008 üsna mitte seda kasutada, ja hea on hoogustumas. Ma kommenteerinud.

    Ma tegin moodul, kus mu määratlus coneccionn sentensia ning andmed adapter ja andmekogum, tegin ühendus hüpata viga aga ma n minu Coneccion.open, näeb välja nagu mina tegin ja ütle mulle, kui saate mind aidata ..

    MOODUL

    Import System.Data
    Import System.Data.OleDb
    Moodul Module1
    Nagu New OleDbConnection Avalik ConecZion ("Provider = Microsoft.Jet.OLEDB.4.0; andmeallika = C: \ Documents and Settings \ kasutaja \ My Documents \ Pr Testear.mdb")
    Nagu New OleDbDataAdapter Avalik DataAdap ("select * from [Club XXXX] telli vastavalt NrodeSocio" ConecZion)
    Andmekogumi New DataSet Public
    End Module

    [B] siia [/ b]

    FrmFormwork_Load Private Sub (ByVal saatja Nagu System.Object, ByVal E System) käepidemed MyBase.Load
    ConecZion.Open ()

    DataSet.Clear ()
    DataAdap.Fill (Dataset "miTestearDt")
    Dataset.Tables ("miTestearDt"). DefaultView.Sort = "NrodeSocio ASC"

    ConecZion.Close ()
    End Sub

    See viga ja STRIP ME

    Ei leidnud paigaldatava ISAM.

    porq saab? : S..

    Loodan, et see hõlmaks vastus

  23. Marco ütleb:

    Täname abi probleem on lahenenud commenters luua astme DataSet mis kuulutati alguses näiteks minu muutuja nimega rekord siis oleks: Dim rekord = Uus DataSet () ja voila!

Kommentaar