Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Problem med ado och Access

Postades av 2000-10-18 18:31:00 - Frans Englich, i forum databaser, Tråden har 10 Kommentarer och lästs av 962 personer

Jag får errorn "Object variable or with block not set" när jag köra följande kod:
<code>
Public Function Info(CmdVar As String) As Boolean
Dim I As Long
Dim LastRecord As Long

'On Error GoTo Err
frmInfo.Show
'-------init database----------
With frmInfo.Ado
.RecordSource = RecordSource
.Recordset.MoveLast ' här får jag errorn
LastRecord = .Recordset.AbsolutePosition
.Recordset.MoveFirst
End With
'------------------------------

'------laddar list-------------
With frmInfo
For I = 1 To 135 ' .Data.Recordset.Properties.Count
.Ado.Recordset.MoveNext
DoEvents
.lstCvars.AddItem (.lblCache.Caption)
Next I
End With
'------------------------------

Info = True
Exit Function
Err:
Unload frmInfo
MsgBox "An error oquired when viewing information about specified Command/Variable. No data have been damaged.", vbInformation
Info = False
End Function
</code>

CursorLocation= 3-adUseClient
ConnectString= "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\Frans\VB\ConfigEditor\Ny.mdb;Persist Security Info=False"

Vad ska jag göra för att det ska fungera?

En fråga till: Om jag vill skapa en databas från grunden(med kod) hur gör jag det? Dvs att jag inte öppnar en befintlig utan skapar en helt ny *.mdb

mvh Cyth


Svara

Sv: Problem med ado och Access

Postades av 2000-10-19 08:29:00 - Pelle Johansson

Det kanske är så att efter .recordsource så måste du sätta .Refresh för att den skall köra din sql-fråga. Jag ser dock ingen .Open på connection heller?


Svara

Försökte....

Postades av 2000-10-19 12:38:00 - Frans Englich

Jag lade till " .Recordset.Open" innan .recordsource men det hjälpte inte. Jag fick errorn vid .recordeset.open istället. Jag prövade med att köra .refresh efter att jag hade ändrat recordsource men det hjälpte heller inte. Vad är felet?



Svara

Sv: Försökte....

Postades av 2000-10-19 16:27:00 - Patrik Löwendahl

När och var får du den ???


Svara

Sv: Försökte....

Postades av 2000-10-19 16:28:00 - Patrik Löwendahl

Mer info, var är ado objektet ?? Hur har du initierat det ??


Svara

Sv: Försökte....

Postades av 2000-10-19 18:40:00 - Frans Englich

Ado objektet? det är en vanlig ado kontroll. vad vill du mera veta?

Du hittar all kod i mitt första inlägg. Den enda skillnaden är att jag har lagt in .open i min 'init del. Och jag får felmeddelandet vid .open (samma err som första gången). Hajar du?


Svara

Sv: Försökte....

Postades av 2000-10-20 11:40:00 - Patrik Löwendahl

det verkar som om din recordsource inte initieras riktigt.. dvs du har inget recordset att arbeta med överhuvudtaget ...

Beroende på vilken typ av kommando skall recordsource se ut på olika sätt ... Du visar inte vad recordsource är i din fråga, skickar bara med en variabel. vad innehåller variablen recordsource och vad har du för commandtype satt ??

ett exempel på recordsource / commandtype

adodc1.commandtype = adCmdTable
adodc1.recordsource = "Customers"

nu hämtar den all data från Customers tabellen i db'n ...


.open kan du skippa om du använder recordsource ... Däremot kan det vara ide att använda .refresh

// Patrik


Svara

Sv: Försökte....

Postades av 2000-10-21 15:47:00 - Frans Englich

Nu börjar jag bli lite smått sur på allt detta databas krånglet!

Mitt problem kvarstår:

<code>

'Jag skapar databasen med följande kod vilket går alldeles utmärkt:

Dim db as Database
Dim tblDef as Tabledef
Dim fldDef as Field
Dim dbName as String

Private Sub cmdCreateDataBase_Click()

dbName = "F:\Frans\VB\Ado\Test.MDB"

if (Len(Dir(dbName))) then
Kill dbName
end if

Set db =DBEngine.Workspaces(0).CreateDatabase(dbName,_ dbLangGeneral)

'Skapar databasen
set tblDef = db.CreateTableDef("Tabellnamn")

'Skapar fältet i Tabellnamn tabellen
Set fldDef = tblDef.CreateField("Fältnamn", dbText)
'dbText är fältets datatyp

'Knyter fältet till tabellen
tblDef.Fields.Append fldDef

'Knyter tabellen till databasen
db.TableDefs.Append tblDef
----------------------------------------

'jag öppnar databasen med följande kod och det funkar som det ska:

Public Sub InitADO()
Set con = New ADODB.Connection
Set rst = New ADODB.Recordset
Dim ConnectionString As String
ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\Frans\VB\Ado\Test.MDB;Persist Security Info=False"
Ado.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\Frans\VB\Test\InfoKälla\Quake.MDB;Persist Security Info=False"

Ado.RecordSource = "Select * From Commands"
' öppnar anslutningen
On Local Error Resume Next
con.Open ConnectionString

If con.Errors.Count > 0 Then
MsgBox "anslutningen misslyckades!" & vbCrLf & _
con.Errors(0).Description
ClearADO
End
Else
MsgBox "du är ansluten till databasen"
End If

End Sub
</code>

Vad ska jag göra efter detta för att skriva ett värde/läsa från databasen?
Jag har provat lite olika varianter men inga har lyckats. Det dumma är att allt funkar med den vanliga data1 kontrollen men när jag sedan ska göra det med ado så funkar det inte som det ska. Och om jag har förstått folk rätt så är det ado som gäller.

Tacksam för hjälp, smått desperat

/Cyth


Svara

Sv: Försökte....

Postades av 2000-10-21 20:57:00 - Pelle Johansson

Hej, du blandar ihop detta. Gör istället såhär...

<code>
Sub Form_Load()

ADOInit

' alternativ 1
set rst=con.execute("select * from command")
do while not rst.eof then
list1.additem rst(0)
rst.movenext
loop
rst.close

' alterntiv 2
Rst.Open "command",con
do while not rst.eof then
list1.additem rst(0)
rst.movenext
loop
rst.close

End Sub


Public Sub InitADO()
Set con = New ADODB.Connection
Set rst = New ADODB.Recordset
ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\Frans\VB\Ado\Test.MDB;Persist Security Info=False"

' öppnar anslutningen
On Local Error Resume Next
con.Open ConnectionString

If con.Errors.Count > 0 Then
MsgBox "anslutningen misslyckades!" & vbCrLf & _
con.Errors(0).Description
ClearADO
End
Else
MsgBox "du är ansluten till databasen"
End If

End Sub
</code>


Svara

Sv: Försökte....

Postades av 2000-10-23 18:32:00 - Frans Englich

Jag börjar bli lite fundersam här...ingenting fungerar.
Jag lägger till en (OBS!) vanlig data1 kontroll till mitt formulär och väljer databasename och recordsource. Jag"knyter" även en label till data kontrollen. När jag sedan kör programmet och när jag trycker på data kontrollens knappar så händer inte ett skit. Jag prövar även att köra det med kod:

<code>data1.recordset.movefirst</code>

Men då får jag errorn "Object Variable or with block not set.".

Detta börjar gå mig på nerverna, absolut ingenting funkar när det gäller databaser. Jag har inte gjort några basala fel som att jag försöker öppna en tom databas eller en with sats som är fel.

Kan det vara någon kontroll/vb som är paj? Jag har visual studio enterprise, service pack 4, och mdac 2.6 installerat.

/Cyth


Svara

Sv: Försökte....

Postades av 2000-10-23 18:57:00 - Pelle Johansson

Titta på denna kursen och se till att du gör allt rätt..
http://www.pellesoft.nu/learn/databas/access/addrec.htm

/Pelle


Svara

Nyligen

  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak
  • 16:14 Vem anlitar man egentligen när tak
  • 16:13 Vem anlitar man egentligen när tak
  • 11:52 Noen erfaring med uttak hos Mostbe
  • 11:51 Noen erfaring med uttak hos Mostbe

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 613
27 958
271 741
2 511
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies