Hur returnerar man ett ett värde (i detta fall en sökväg till en fil) från en databas? Du använder dig av ett Command objekt, om det sedan är OledbCommand eller någon annan spelar ingen roll. I det objektet finns en funktion vid namn ExecuteScalar som returnerar första radens första columns värde som ett objekt. Här är min kod: Jag löste det på följande sätt: Gör så här:returnera sträng från en tabell??
Jag har en tabell:
BILDER
--------
BildId
BildNamn
BildSokvag
För att komma åt BildSokvag använder jag:
SELECT BildSokvag FROM Bilder WHERE (BildNamn = @BildNamn)
Själva @Bildnamn får jag från en TextBox.
Jag skulle vilja spara det jag har i i BildSokvag som en sträng... Nån som har nåt förslag?? Sv: returnera sträng från en tabell??
Exempel.
<code>
Dim command As New Oledb.OledbCommand("SELECT BildSokvag FROM Bilder WHERE (BildNamn = 'något'", conn)
Dim sokvag As String = command.ExecuteScalar()
</code>
Antar att du redan använder dig av ett Command objekt då du har @BildNamn i din SQL sats, så det är ju då bara att anropa ExecuteScalar funktionen för att då resultatet.Sv:returnera sträng från en tabell??
Dim MyConnection As SqlConnection
Dim MyCommand As SqlDataAdapter
MyConnection = New SqlConnection("Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\ASPNETDB.MDF;Integrated Security=True;User Instance=True")
Dim SelectCommand As String = ("SELECT BildPlats FROM aspnet_Uppgifer WHERE (BildNamn = @BildNamn) AND (BildNr = @BildNr)")
MyCommand = New SqlDataAdapter(SelectCommand, MyConnection)
'Deklarera SqlParameter @BildNamn
MyCommand.SelectCommand.Parameters.Add(New SqlParameter("@BildNamn", SqlDbType.VarChar))
'Tilldela @BildNamn värdet från txtUppgift1.Text
MyCommand.SelectCommand.Parameters("@BildNamn").Value = txtUppgift1.Text
'Deklarera SqlParameter @BildNr
MyCommand.SelectCommand.Parameters.Add(New SqlParameter("@BildNr", SqlDbType.VarChar))
'Tilldela @@BildNr värdet från txtUppgift2.Text
MyCommand.SelectCommand.Parameters("@BildNr").Value = txtBok2.Text
Hur får jag ut min "BildPlats" ur SqlDataAdapter (som är sträng)??
Det fungerar inte med executescaler och sqldataadapter.
Tack för hjälpen!! :-)Sv: returnera sträng från en tabell??
Dim MyConnection As SqlConnection
Dim MyCommand As SqlCommand
MyConnection = New SqlConnection("......")
Dim SelectCommand As String = ("SELECT BildPlats FROM aspnet_Uppgifer WHERE (BildnamnNamn = @bildNamn) AND (BildNr = @BildNr)")
MyCommand = New SqlCommand(SelectCommand, MyConnection)
MyConnection.Open()
MyCommand.Parameters.Add("@BildNamn", SqlDbType.VarChar)
MyCommand.Parameters("@BildNamn").Value = txtUppgift1.Text
MyCommand.Parameters.Add("@BildNr", SqlDbType.VarChar)
MyCommand.Parameters("@BildNr").Value = txtUppgift2.Text
Dim post As String = MyCommand.ExecuteScalar().ToStringSv:returnera sträng från en tabell??
MyCommand.Parameters.Add("@BildNamn", SqlDbType.VarChar).Value = txtUppgift1.Text
så sparar du in nästan 50% på antal tecken i koden direkt.