Hei
Minulla on tietokanta Kalusto (KalustoDataSet), jossa on taulu Autot ja sarake REK_NRO.
Tietokanta on MS Access 2007:n
Googlettanut (visual basic 2010 database find) ja kokeillut erilaisia vaihtoehtoja mut ei onnistu.
VB on luonnut yhteyden tietokantaan on TableAdapter ja BindingSourcet.
Opettelen nyt tätä tietokannan hyödyntämistä ja logiikka ei nyt oikein aukea...
Miten saan tarkistettua löytyykö syötetty rekisterinumero tietokannasta?
Palauttaisi arvon True/False.
Kiitos etukäteen jos joku ehtisi auttaa..
Pitäisi onnistua hyvinkin yksinkertaisella kyselyllä, kuten
SELECT COUNT(*)>0 FROM autot WHERE rek_nro = 'JEE-123';
tai jos ei Accessissa toimi ihan suoraan tuolla, niin jollain hyvin samankaltaisella nyt ainakin.
Moi jokke568!
esim näin...
'Huom! Esimerkki on väännetty SharpDevelop 4.2:lla Imports System Imports System.Data Imports System.Data.OleDb Public Partial Class MainForm Dim conn As OleDbConnection = Nothing Dim KalustoDataSet As DataSet = Nothing Dim KalustoAdapter As OleDbDataAdapter = Nothing Dim connstr As String = String.Empty Public Sub New() Me.InitializeComponent() End Sub Sub MainFormLoad(sender As Object, e As EventArgs) conn = New OleDbConnection Dim dbPath As String = Environment.GetFolderPath( _ Environment.SpecialFolder.MyDocuments) 'esim. dbPath += "\Kalusto.accdb" connstr = "Provider=Microsoft.ACE.OLEDB.12.0;" + _ "Data Source="+ dbPath + ";Persist Security Info=False;" Try conn.ConnectionString = connstr conn.Open Catch ex As Exception MsgBox(ex.Message) End Try End Sub Sub Button1Click(sender As Object, e As EventArgs) If textBox1.Text = String.Empty Then textBox1.Focus End If If conn.State = ConnectionState.Open Then Dim query As String = "SELECT * FROM Autot WHERE REK_NRO ='" + textBox1.Text + "'" KalustoAdapter = New OleDbDataAdapter(query, connstr) KalustoDataSet = New DataSet KalustoAdapter.Fill(KalustoDataSet, "Autot") If KalustoDataSet.Tables("Autot").Rows.Count > 0 Then MsgBox("LÖYTYI") End If KalustoAdapter = Nothing KalustoDataSet = Nothing End If End Sub Sub MainFormFormClosing(sender As Object, e As FormClosingEventArgs) If conn.State = ConnectionState.Open Then conn.Close End If conn = Nothing End Sub End Class
Kiitos Neau33 !
Jotenkin välttelin OleDb:tä kun oletin, että yhteyttä tietokantaan ei tarvitsisi tehdä, kun kerran on Dataset, TableAdapterit ja BingingSourset.
Kiitos.
Aihe on jo aika vanha, joten et voi enää vastata siihen.