---
title: "Problem med Parameters"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/151831-problem-med-parameters"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "saw"
published: "2006-09-27T19:15:13.000Z"
updated: "2006-09-27T21:18:36.000Z"
replies: 4
views: 351
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/151831-problem-med-parameters"
---

# Problem med Parameters

## #1 — saw, 2006-09-27T19:15Z

Jag har fått problem med detta script:

```
sql = "SELECT TOP 5 Namn, Ratt, NyTid, Datum FROM Listan WHERE datum 
BETWEEN @StartDate AND @EndDate ORDER BY Listan.Ratt DESC, Len
(Listan.Tid), Listan.Tid ASC , Listan.Datum DESC,Listan.Namn; "; 

        OleDbCommand Cmd = new OleDbCommand(sql, DBConn);
        Cmd.Parameters.Add("@StartDate", OleDbType.DBTime).Value = 
DateTime.Now.AddDays(+1);
        Cmd.Parameters.Add("@EndDate", OleDbType.DBTime).Value = 
DateTime.Now.AddDays(-30);
        DBConn.Open();
        Repeater1.DataSource = Cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);
        Repeater1.DataBind();
```

Error:

```
Warning    1    System.Data.OleDb.OleDbParameterCollection.Add(string, 
object) är föråldrad: Add(String parameterName, Object value) has been 
deprecated.  Use AddWithValue(String parameterName, Object value).  [url]
http://go.microsoft.com/fwlink/?linkid=14202[/url]  
  C:\Inetpub\wwwroot\ASP_Net-Test\Saw-Asp.net\Quize\Quize.aspx.cs  
  43    9    C:\...\Saw-Asp.net
'Jag får två sådanahär error samt 
Typblandningsfel i villkorsuttryck...
```

Någon som kan se felet?

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

## #2 — natas, 2006-09-27T20:20Z

Du använder .NET2.0 men försöker skriva kod för .NET1.1?.

jag har för mig att "Add("@StartDate", OleDbType.DBTime).Value " är borttaget ur .NET2.0 och ersatt av nåt jag inte kommer ihåg just nu.

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

## #3 — emission, 2006-09-27T20:41Z

Psst, saw, det heter inte script.... :)

Vad beträffar varningen så rekommenderar jag att du läser vad som står i felmeddelandet.

Om det är en Access-databas så bör du inte kalla kolumen för "Datum" och parametrarna ska anges med frågetecken. 

```
"SELECT TOP 5 Namn, Ratt, NyTid, Datum FROM Listan WHERE datum 
BETWEEN ? AND ? ORDER BY Listan.Ratt DESC, Len(Listan.Tid), Listan.Tid ASC , Listan.Datum DESC,Listan.Namn; "
```

Om det är en SQL Server-databas så ska du använda SqlCommand och inte OleDbCommand.

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

## #4 — saw, 2006-09-27T20:55Z

Det rör sig om en Access-databas. Tydligen så gjorde jag en miss när det gällde att namna Datum, men det får jag ju titta på.
Hursomhelst, så har jag ändrat till frågetecken, men jag får likväl typblandningsfel.
Datatypen i databasen är datum/tid.
Jag har tittat och letat runt överallt, men jag blir inte klok på felet. Jag har en 
fungerande SQL (utan parameter), men jag fick rekommendation att köra parameter
istället. Skall jag ge upp???

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

## #5 — emission, 2006-09-27T21:18Z

Du ska nog använda antingen OleDbType.DBTimeStamp eller OleDbType.DBDate

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

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/151831-problem-med-parameters
