---
title: "Databas Fel"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/79879-databas-fel"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "PsyDonia"
published: "2003-06-16T18:46:52.000Z"
updated: "2003-06-19T00:09:01.000Z"
replies: 10
views: 273
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/79879-databas-fel"
---

# Databas Fel

## #1 — PsyDonia, 2003-06-16T18:46Z

Dim Conn As New ADODB.Connection
Dim strConn As String

strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\\Databas.mdb"

Conn.Open strConn

Dim RecSet As New ADODB.Recordset
Dim strSQL As String

strSQL = "SELECT \* FROM EnSak WHERE date=" & Date

RecSet.Open strSQL, Conn, adOpenStatic, adLockOptimistic 'Ett recordset förhoppningsvis...
Dim i
i = 0
Do Until RecSet.EOF

        Text1(i).Text = RecSet!Hitta
        RecSet.Update
        

i = i + 1

RecSet.MoveNext
Loop

RecSet.Close
Conn.Close
Set RecSet = Nothing
Set Conn = Nothing

Får inte detta att funka jag vill att Hitta ska skrivas ut i Text1(i).text om date i databasen är lika med dagens datum.

borde inte min kod funka..
eller vad e fel.
för den vill inte lägga till dom "Hitta" som är med dagens datum

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

## #2 — PsyDonia, 2003-06-18T15:22Z

ingen som förstår vad jag menar och kan hjälpa mig.

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

## #3 — @nders, 2003-06-18T15:25Z

Jag är ledsen, jag har inte sett ditt inlägg förrän nu.

Får du något felmeddelande? Vad är fältet datum av för typ? Om det är (som det borde vara) av riktig datumtyp så ska du, eftersom du kör Access, omsluta datumvärdet med #.

```
strSQL = "SELECT * FROM EnSak WHERE [date]=#" & Date & "#"
```

Date är dessutom ett dåligt fältnamn (reserverat ord) så helst ska du byta det mot något annat, alternativt klamra som i mitt exempel ovan.

Jag efterlyser också \[kod\]-taggar så din kod blir mer lättläst.

Mvh,

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

## #4 — PsyDonia, 2003-06-18T15:34Z

ok ska komma ihåg kod taggar nästa gång sorry.
ska testa det.
date är för tillfället bara vanlig text som typ.
får inget felmedelande programmet vill bara inte ta in dom raderna som har rätt datum.

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

## #5 — @nders, 2003-06-18T15:37Z

Om fältet date är av typen text (inte bra), så ska du istället för brädgårdar runt värdet ha apostrofer.

Mvh

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

## #6 — PsyDonia, 2003-06-18T15:39Z

@nders nu funkar det..
tack så mycket.

```
viste inte hur man lägger in kod tagar men läste i forum regler.
så i fortsättningen ska det bli rätt taggar..
```

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

## #7 — @nders, 2003-06-18T15:41Z

Får man fråga vad du har *RecSet.Update* till i koden? Jag skulle vilja förenkla lite:

```
Dim Conn As New ADODB.Connection 
Dim RecSet As New ADODB.Recordset 
Dim strSQL As String 
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\Databas.mdb" 

strSQL = "SELECT * FROM EnSak WHERE [date]='" & Date & "'"

RecSet.Open strSQL, Conn, adOpenStatic, adLockOptimistic 'Ett recordset förhoppningsvis... 
Dim i 
i = 0 
Do Until RecSet.EOF 
     Text1(i).Text = RecSet!Hitta 
     i = i + 1 
     RecSet.MoveNext 
Loop 

RecSet.Close 
Conn.Close 
Set RecSet = Nothing 
Set Conn = Nothing
```

Vad gäller konstanterna du använt när du skapar recordsetet, man kan mycket väl korta bort de också möjligen, jag använder aldrig sådana konstanter, så jag är inte säker på vad de betyder faktiskt.

Men bra att du fick det att fungera. :)

Mvh

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

## #8 — PsyDonia, 2003-06-18T15:51Z

jo jag kör en del ASP så därför så därför blev det en update för med asp e det bra att göra en update.
kanske ska ta bort.
lite onädigt kanske men men.

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

## #9 — @nders, 2003-06-18T15:54Z

> **PsyDonia skrev:**
>
> jo jag kör en del ASP så därför så därför blev det en update för med asp e det bra att göra en update.

Hur menar du då?

Update använder du inte när du endast läser data, utan ska göra förändringar i recordsetdata, antingen i ett frånkopplat recordset eller förändringar som lagras i databasen.

Så om du kör .Update i andra lägen än när du uppdaterar, lägger till, eller tar bort data, släng bort.

Mvh

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

## #10 — PsyDonia, 2003-06-18T16:02Z

vet inte va väl trött eller nåt.
nu e jag förvirrad här.
när jag tänker efter så .update helt fel...

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

## #11 — Nexus86, 2003-06-19T00:09Z

> **@nders skrev:**
>
> så jag är inte säker på vad de betyder faktiskt

> **MSDN skrev:**
>
> Recordsets can be set to read-only, or they can be configured to allow updates. For most scripts, the LockType can be set to adLockOptimistic (value = 3). With this setting, the record being edited is not locked (that is, no restrictions are placed on another user accessing that record) until you call the Update method.

> **MSDN skrev:**
>
> If you set the CursorLocation to the client, you must set the CursorType to adOpenStatic (value = 3). This type supports scrolling forward and backward in the recordset but does not show changes made by other users. This is because the cursor is operating on data cached on the client computer rather than directly from the database.

Hittades på <http://www.microsoft.com/technet/treeview/default.asp?url=/technet/scriptcenter/scrguide/sas_ent_cwja.asp>. :)

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

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/79879-databas-fel
