---
title: "Lägga in i adapter + parameter."
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/167834-lägga-in-i-adapter-parameter"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "ConnyFox"
published: "2008-01-06T19:06:01.000Z"
updated: "2008-01-07T21:05:29.000Z"
replies: 5
views: 376
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/167834-lägga-in-i-adapter-parameter"
---

# Lägga in i adapter + parameter.

## #1 — ConnyFox, 2008-01-06T19:06Z

Har följande kod och vill byta ut strängen direkt i sql frågan mot en parameter istället för att göra det säkrare

denna koden har jag just nu

```
        Dim conn As MySqlConnection
        Dim adapter As MySqlDataAdapter
        Dim dataset As New DataSet
        If ViewState("MySQLDataSet") Is Nothing Then
            ' Read the connection string from Web.config
            Dim strsearch As String = Search_title.Text
            conn = New MySqlConnection("server=localhost; database=jmdb; pooling=false;")
            Dim strSQL As String = "SELECT * FROM movies where title like '" & searchstring & "'"
            ' Create adapter
            adapter = New MySqlDataAdapter(strSQL, conn)
            ' Fill the DataSet
            adapter.Fill(dataset, "movies")
```

och vill altså skriva @searchtext i sql:en istället och lägga till något i stil med detta

conn.Parameters.Add("@searchstring", System.Data.SqlDbType.NVarChar, 150)
conn.Parameters("@searchstring").Value = strsearch

Permalänk: https://www.webforum.nu/p/167834

## #2 — emission, 2008-01-06T19:46Z

```
Dim strSQL As String = "SELECT * FROM movies where title like @searchstring"
adapter = New MySqlDataAdapter(strSQL, conn)
adapter.SelectCommand.Paramaters.Add("@searchstring", System.Data.SqlDbType.NVarChar, 150).Value=strsearch
```

Permalänk: https://www.webforum.nu/p/2068393

## #3 — ConnyFox, 2008-01-06T19:51Z

EDIT: hmm verkar inte fungera alls, får varken felmeddelande eller några poster. sen så vill jag ha det så det fungerar som motsvarande

like '%" & strSearch & "%'

dvs med % som gör att delar av ord matchas. hur löser jag det?
såhär ser det ut nu

```
        ' Define data objects
        Dim conn As MySqlConnection
        Dim adapter As MySqlDataAdapter
        Dim dataset As New DataSet
        If ViewState("MySQLDataSet") Is Nothing Then
            ' Read the connection string from Web.config
            Dim strsearch As String = Search_title.Text
            conn = New MySqlConnection("server=localhost; database=jmdb; pooling=false;")
            Dim strSQL As String = "SELECT * FROM movies where title like @searchstring"
            adapter = New MySqlDataAdapter(strSQL, conn)
            adapter.SelectCommand.Parameters.Add("@searchstring", System.Data.SqlDbType.NVarChar, 150).Value = strsearch
            ' Fill the DataSet
            adapter.Fill(dataset, "movies")
            ' Store the DataSet in view state
            ViewState("MySQLDataSet") = dataset
        Else
            dataset = ViewState("MySQLDataSet")
        End If
```

Permalänk: https://www.webforum.nu/p/2068395

## #4 — emission, 2008-01-06T20:44Z

.....Value = "%" & strsearch & "%"

eller

..... LIKE '%' + @searchstring + '%'"

Att du lagrar hela datasetet i Viewstate kan vi diskutera någon annan gång.. :)

Permalänk: https://www.webforum.nu/p/2068405

## #5 — ConnyFox, 2008-01-06T22:37Z

Fungerar fortfarande inte, får inte tillbaka några poster alls oavsett vad jag skriver in

Permalänk: https://www.webforum.nu/p/2068440

## #6 — emission, 2008-01-07T21:05Z

> **ConnyFox skrev:**
>
> Fungerar fortfarande inte, får inte tillbaka några poster alls oavsett vad jag skriver in

Äsch, det är ju jag som är blind och inte ser att det är en MySQL-databas...

Det ska vara "?", inte "@" i parameternamnen. Konkateneringsvarianten med '%' + .... kommer inte att funka, så fu får ta den andra (eller konkatenera à la MySQL). Dessutom ska det vara en MySqlDbType, inte en SqlDbType. Säkert något annat också, men börja så.

Permalänk: https://www.webforum.nu/p/2068672

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/167834-lägga-in-i-adapter-parameter
