---
title: "var är felet?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/103679-var-är-felet"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "MizzK"
published: "2004-05-15T12:25:12.000Z"
updated: "2004-05-15T14:33:51.000Z"
replies: 11
views: 406
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/103679-var-är-felet"
---

# var är felet?

## #1 — MizzK, 2004-05-15T12:25Z

kan någon hjälpa mig att hitta felet.. följande felmeddelande kommer:

Typblandningsfel i villkorsuttryck

```
Dim antal As Integer = cmd.ExecuteScalar()
```

klagar den på.. försökt kolla av med db:n om jag angett fel i sql satsen, och vad jag ser är det rätt
i db attributen följande:

sortNr = tal
orderNr = text
datum = datum
antal = tal

```
 Function antalet(ByVal sortnr As Integer)

        'Skapar anslutning (anropar fran web.config)
        Dim strConn As String = GetstrConnection()
        Dim myConn As New OleDbConnection(strConn)

        Dim strsql As String = "SELECT Count(sortNr) AS Uttryck FROM kundvagn WHERE OrderNr = '" & Session("OrderNumber") & "' AND sortNr =  ' & sortnr & '"
        Dim myCommand As New OleDbCommand(strsql, myConn)

        Dim cmd As OleDbCommand = New OleDbCommand()
        cmd.CommandType = CommandType.Text
        cmd.Connection = myConn
        cmd.CommandText = strsql

        myConn.Open()
        Dim antal As Integer = cmd.ExecuteScalar()
        myConn.Close()

        Return antal

    End Function

    Sub AddToCart(ByVal Src As Object, ByVal Args As CommandEventArgs)
        Dim sortNr As Integer
        sortNr = CInt(Args.CommandName)

        If Session("OrderNumber") = "" Then
            Randomize()
            Session("OrderNumber") = (Int((9999999 - 1111111 + 1) * Rnd() + 1111111)).ToString()
        End If

        If antalet(sortNr) = 0 Then

            Response.Write("antalet= 0")

            Dim myconn As OleDbConnection = New OleDbConnection(GetstrConnection)
            myconn.Open()
            Dim strsql As String = "INSERT INTO Kundvagn (OrderNr, OrderDatum, SortNr, antal) VALUES"
            strsql = strsql + " ( '" & Session("OrderNumber") & "', '" & Today & "',  ' & sortNr & ', 1)"

            Dim myCommand As OleDbCommand = New OleDbCommand(strsql, myconn)
            myCommand = New OleDbCommand(strsql, myconn)
            myCommand.ExecuteNonQuery()
            myconn.Close()

        End If
        Response.Write("nu så")

    End Sub
```

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

## #2 — Dino, 2004-05-15T12:33Z

```
Dim antal As Integer = DirectCast(cmd.ExecuteScalar(), Integer)
```

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

## #3 — MizzK, 2004-05-15T12:38Z

hjälper inte, är inte det som är felet.. =/

felet ligger ngnstans här

```
sortNr =  ' & sortnr & '
```

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

## #4 — Dino, 2004-05-15T12:46Z

Så här då.

```
Dim antal As Integer = CType(cmd.ExecuteScalar(), Int)
```

Och ta bort

```
Dim cmd As OleDbCommand = New OleDbCommand()
cmd.CommandType = CommandType.Text
cmd.Connection = myConn
cmd.CommandText = strsql
```

red//Såg inte din redigering. Men ovan skall ändå vara rätt.

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

## #5 — Dino, 2004-05-15T12:51Z

```
Dim strsql As String = string.Format("SELECT Count(sortNr) AS Uttryck FROM kundvagn WHERE OrderNr = '{0}' AND sortNr = {1}", Session("OrderNumber").ToString(), sortNr)
```

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

## #6 — MizzK, 2004-05-15T12:54Z

samma fel fortfarande:
kan inte felet ha ngt med detta:

```
 Dim sortNr As Integer
sortNr = CInt(Args.CommandName)
```

 

på knappen ser ut så här:

```
<asp:ImageButton ID="bestallknapp" CommandName='<%# Container.DataItem("sortNr") %>' AlternateText="kk" ImageUrl="../bilder/kk.gif" runat="server" OnCommand="AddToCart" />
```

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

## #7 — MizzK, 2004-05-15T12:57Z

tack Dino! den sql satsen hjälpte med fick samma fel nu fast på en annan rad..

```
myCommand.ExecuteNonQuery()
```

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

## #8 — cyprys, 2004-05-15T12:57Z

Du ska ta bort enkelfnuttarna kring sortNr

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

## #9 — Dino, 2004-05-15T13:05Z

```
Dim strsql As String = string.Format("INSERT INTO Kundvagn (OrderNr, OrderDatum, SortNr, antal) VALUES('{0}', '{1}', {2}, {3})", Session("OrderNumber").ToString(), Today, sortNr, 1)"
```

Bättre är väl att använda Parametrar(lite osäker vb kod)

```
Dim strsql As String = string.Format("INSERT INTO Kundvagn (OrderNr, OrderDatum, SortNr, antal) VALUES(?, ?, ?, ?)"

Dim myCommand As OleDbCommand = New OleDbCommand(strsql, myconn)
myCommand.Parameters.Add(new OleDbParameter("@ordernr", Session("OrderNumber").ToString()))
myCommand.Parameters.Add(new OleDbParameter("@today", Today))
myCommand.Parameters.Add(new OleDbParameter("@sortnr", sortNr))
myCommand.Parameters.Add(new OleDbParameter("@antal", 1))
```

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

## #10 — MizzK, 2004-05-15T13:06Z

tog bort först bara  ' ' på sorNr då fick jag detta:

Syntaxfel (operator saknas) i frågeuttrycket '& sortNr &'.

sedan tog jag bort & också och då fick jag detta:

No value given for one or more required parameters.

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

## #11 — MizzK, 2004-05-15T13:14Z

tusen tack DINO!

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

## #12 — MizzK, 2004-05-15T14:33Z

löst

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

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/103679-var-är-felet
