Jag vill hämta data i access DB och skriva några fält i några textrutor. Det där fungerar nog inte... Ok, det är ett steg i rätt riktning säger felkoderna :) En parentes för mycket, testa: <code> Så ska det vara! En förenkling som iofs kostar lite, lite prestanda men som underlättar är: varför inte bara: För att DataReader("") get ett object tillbaka tilket jag itne tror Label.Text accepterar... Alternativet skulle vara DataReader("").ToString()Fel på fråga/urval till db behöver lite hjälp...
Problemet börjar nog vid SELECT
Föga förvånande så funkar inte detta, men ni förstår nog vad jag vill uträtta:
<code>
'hämta data?
' On Error Resume Next
' TextBoxDatum.Text = Date.Now
Dim Connection As OleDbConnection
Connection = New OleDbConnection("PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=" & Server.MapPath("~/App_data\larl1.mdb"))
Connection.Open()
Dim Command As OleDbCommand
Command = New OleDbCommand("SELECT ( ForNamn, EfterNamn) FROM elev WHERE (Personnummer)=720505-7000" & _
" VALUES ( '" & Fnamn.Text & "' , '" & Enamn.Text & "' )", Connection)
Command.ExecuteNonQuery()
Connection.Close()
Jag har gjort denna för att skriva till DB och då funkar det (INSERT INTO elev(ForNamn, EfterNamn... istället för SELECT)
</code>
Hur skriver jag detta rätt?
Jag vill sedan istället för personnummret ha en labelPersonNummer.text istället.Sv: Fel på fråga/urval till db behöver lite hjälp...
<code>
Command = New OleDbCommand("SELECT ForNamn, EfterNamn FROM elev WHEREPersonnummer= 720505-7000 )", Connection)
</code>
Försök med detta Sv:Fel på fråga/urval till db behöver lite hjälp...
<code>
Command = New OleDbCommand("SELECT ForNamn, EfterNamn FROM elev WHEREPersonnummer= 720505-7000 )", Connection)
</code>
har jag kvar ,Connection) så väntar den sig "end of statment"
Så jag försöker med:
<code>
("SELECT ForNamn, EfterNamn FROM elev WHERE Personnummer= 720505-7000 )", " & _
" VALUES ( '" & Fnamn.Text & "' , '" & Enamn.Text & "' )", Connection)
</code>
Och här så säger den "value of string cant be converted to system.data....." vid &_
"Values ( '" " ger syntax error
Var/hur talar jag om var jag vill visa datan om VALUES raden är fel (som jag tror den är, för det är väl värdena jag tidigare skrev TILL databasen?) ?
Jag vill altså visa ForNamn i min textbox eller label Fnamn.Text.Sv: Fel på fråga/urval till db behöver lite hjälp...
<code>
Command = New OleDbCommand("SELECT ForNamn, EfterNamn FROM elev WHERE Personnummer=720505-7000", Connection)
</code>Sv:Fel på fråga/urval till db behöver lite hjälp...
Command = New OleDbCommand("SELECT ForNamn, EfterNamn FROM elev WHERE Personnummer=720505-7000", Connection)
</code>
Fint, det gav inga felmedelanden alls!
Men var klämmer jag in var jag vill att datan ska hamna?
'" & Fnamn.Text & "' , '" & Enamn.Text & "' ,
Jag har hittat något om OleDbDataReader och lurat ut att det borde vara något sådant, men det blev inte rätt...
<code>
Connection.Open()
Dim Command As OleDbCommand
Command = New OleDbCommand("SELECT ForNamn, EfterNamn FROM elev WHERE Personnummer=720505-7000", Connection)
OleDbDataReader reader = command.ExecuteReader();
reader.Read();
Label.Text = reader.GetString(0); ' GÖR MAN GETSTRING(1) FÖR EFTERNAMN ????
reader.Close();
'( )", Connection)
Command.ExecuteNonQuery()
Connection.Close()
</code>
Vad har jag gjort fel?
Finns det enklare sätt att hämta data ur databas till label?Sv: Fel på fråga/urval till db behöver lite hjälp...
<code>
Command = New OleDbCommand("SELECT ForNamn, EfterNamn FROM elev WHERE Personnummer='" + personnummer.Text + "' ", Connection)
Dim reader As OleDbDataReader = Command.ExecuteReader()
reader.Read()
Fnamn.Text = reader.GetString(0)
Enamn.Text = reader.GetString(1)
reader.Close()
</code>Sv:Fel på fråga/urval till db behöver lite hjälp...
<code>
reader.Read()
Fnamn.Text = (string)reader["ForNamn"]
Enamn.Text = (string)reader["EfterNamn"]
reader.Close()
</code>
Obs! C#, min VB är väldigt dålig...men jag gissar på att man i VB inte använder [] utan () vilket ger:
<code>
reader.Read()
Fnamn.Text = (string)reader("ForNamn")
Enamn.Text = (string)reader("EfterNamn")
reader.Close()
</code>Sv: Fel på fråga/urval till db behöver lite hjälp...
<code>
Fnamn.Text = reader("Fornamn")
Enamn.Text = reader("Efternamn")
</code>Sv:Fel på fråga/urval till db behöver lite hjälp...