---
title: "hittar ingen post fast det finns"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/72694-hittar-ingen-post-fast-det-finns"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "ampy"
published: "2003-03-31T15:30:59.000Z"
updated: "2003-04-02T17:22:41.000Z"
replies: 13
views: 352
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/databaser-sql/72694-hittar-ingen-post-fast-det-finns"
---

# hittar ingen post fast det finns

## #1 — ampy, 2003-03-31T15:30Z

Har denna kod:

```
    sql = "select id from gastbok where left(datum,10) = '" & Date - 1 & "' and sort = 'fakta' order by id asc"
    Set rs = connect.execute(sql)
        gastbok_id = rs("id")
    Set rs = Nothing
```

När jag kör den koden på en vanlig .asp-sida så hittar den en massa poster. Men när jag kör den i Visual Basic så hittar den ingen post.

Hur kan det bli så?

Felmeddelandet jag får i VB är:
Antingen är BOF eller EOF satt till True, eller så har aktuell post raderats. Den begärda åtgärden kräver en aktuell post.

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

## #2 — niko, 2003-03-31T16:01Z

Antagligen använder du olika datumformat på ASP-sidan och i VB-programmet.

Att göra strängjämförelser på datum av typen:

```
where left(datum,10) = '" & Date - 1 & "'
```

är som att spela rysk roulette. Du får helt olika resultat beroende på maskinens landsinställningar.

Är fältet *datum* av typen datum i databasen eller text?

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

## #3 — ampy, 2003-03-31T16:03Z

Fältet är tyvärr av typen text.

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

## #4 — niko, 2003-03-31T16:12Z

> Fältet är tyvärr av typen text.

Då får du ta ditt straff och formatera allt i programmet på samma sätt:

> where left(datum,10) = '" & Left(Format(Date - 1, "yyyy-MM-dd") & "' ..

.. eller hur det nu ska vara?

Sen måste du göra samma sak på alla andra ställen i synnerhet när du gör INSERTS så att du inte får blandade format i DB:en. (Alternativet är att göra om fältet till datumtypen.)

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

## #5 — ampy, 2003-04-02T11:36Z

Jag har nu gjort om fältet till typ datetime men när jag skriver så  här hittar den ändå inga poster:

```
...where left(datum2, 10) = '" & Date - 1 & "'...
```

Testade då att skriva så här:

```
...where date(datum2) = '" & Date - 1 & "'...
```

Men då får jag syntaxfel.

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

## #6 — niko, 2003-04-02T12:19Z

Vi talar Access, antar jag?

```
.. where datediff('d',datum2,#" & Date & "#)=1 ..
```

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

## #7 — ampy, 2003-04-02T12:21Z

Det är till en mysql-databas.

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

## #8 — niko, 2003-04-02T12:58Z

MySQL? Verkligen inte mitt favoritämne, men jag antar att man kanske kan skriva så här?

```
.. where (TO_DAYS('" & Format(Date, "yyyy-MM-dd") & "')-TO_DAYS(datum2))=1 ..
```

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

## #9 — ampy, 2003-04-02T13:01Z

Koden fungerade men konstigt nog så hittar den inga poster.  :l 

Jag är säker på att det finns poster från igår (2003-04-01).

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

## #10 — niko, 2003-04-02T13:57Z

> Jag är säker på att det finns poster från igår

Ja, men i så fall kan du kanske köra:

```
SELECT TO_DAYS('" & Format(Date, "yyyy-MM-dd") & "')-TO_DAYS(datum2) from gastbok where id= .. ?
```

för någon av dessa poster och se vad resultatet blir?

Jag tycker det borde bli "1".

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

## #11 — ampy, 2003-04-02T14:01Z

Det blir 0.  :( 

Värdet som finns i kolumnen datum2 i den posten jag valde ut är:

2003-04-01 16:59:22

Den borde ju ha hittat det?

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

## #12 — niko, 2003-04-02T17:05Z

Ja. I "min" MySQL så returnerar iaf:

```
SELECT TO_DAYS('2003-04-02')-TO_DAYS('2003-04-01 16:59:22') from tabell
```

garanterat 1.

Jag har alltså ingen förklaring på ditt problem. Tyvärr.

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

## #13 — ampy, 2003-04-02T17:17Z

Kom på felet. Var en miss av mig.  :r 

Hade även 

sort = 'fakta'

med i sql-satsen av misstag.

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

## #14 — @nders, 2003-04-02T17:22Z

Tråden har egentligen ingenting att göra med Visual Basic, utan flyttas på studs, utan vidare dröjsmål, till mer lämpat forum.

Mvh,

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/72694-hittar-ingen-post-fast-det-finns
