Data type mismatch in criteria expression

Databaser & SQL

1 svar · 179 visningar · startad av Jennie_Pennie

Medlem sedan apr. 200235 inlägg
Trådstart#1

Hej

Jag håller på att göra en sida i ASP.NET där man ska kunna skicka meddelanden och läsa meddelanden. Jag har dock stött på ett problem med en sql sats. Jag försöker hämta en rad i databasen där MeddelandeID är det man skickade med.

I koden står det nu:

Dim strSql As String = "SELECT * FROM privmeddel WHERE MedID = '"+ strMedID +"';"

Men eftersom strMedID är en sträng och MedID är en räknare (integer antar jag att det är) så går det inte ihop. Då får jag upp Data type mismatch in criteria expression

Jag försökte då göra om strMedID till en integer m.h.a
Dim intMedID As Integer= CInt(strMedID)
och sätta in det i sql satsen:
Dim strSql As String = "SELECT * FROM privmeddel WHERE MedID = "+ intMedID +";"

Men då får jag felmeddelandet: Input string was not in a correct format.

Är det nån som vet hur jag ska göra? Jag satt uppe halva natten med det här... det är säkert hur enkelt som helst men jag har nog stirrat mig blind på det...
:OO

Medlem sedan juni 200032 967 inlägg
#2

Skall man inte använda & för strängkonkatenering även i asp.net?

Du skall inte ha apostrofer runt talvärden och fälten är talfält i tabellen.

Prova detta:

Dim strSql As String = "SELECT * FROM privmeddel WHERE MedID = "& intMedID &";"

Mvh,

380 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
117 ms — deklarationer (db)
122 ms — hämta statistik (db)
131 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)