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


Finns tabell??

Postades av 2003-04-02 11:09:33 - Michael Ziegler, i forum access, Tråden har 7 Kommentarer och lästs av 692 personer

Lyckas ej hitta något sätt att från VB få reda på om en viss tabell finns
i databasen. Någon som kan mer än mig??

Mvh
MiZ


Svara

Sv: Finns tabell??

Postades av 2003-04-02 12:17:20 - Andreas Hillqvist

Använder du ADO eller DAO?

Har gjort en funktion åt dig för ADO:
<code>
Public Function FindTable(Connection As ADODB.Connection, TableName As String)
Dim rs As ADODB.Recordset
'TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, TABLE_TYPE
Set rs = Connection.OpenSchema(adSchemaTables, Array(Empty, Empty, TableName, Empty))
If rs.EOF Then
FindTable = False
Else
FindTable = True
End If
rs.Close
End Function
</code>
Du anropar den så här:
<code>
Public Sub Test()
Dim con As ADODB.Connection
Set con = New ADODB.Connection
con.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Persist Security Info=False;" & _
"Data Source=c:\test.mdb"

If FindTable(con, "User") Then
Debug.Print "User finns!"
Else
Debug.Print "User saknas!"
End If
If FindTable(con, "Users") Then
Debug.Print "Users finns!"
Else
Debug.Print "Users saknas!"
End If
con.Close
End Sub
</code>


Svara

Sv: Finns tabell??

Postades av 2003-04-02 12:32:50 - Michael Ziegler

Kalas! Men - måste jag använda objektet con, jag är ju redan i databasen (VB Acess)?


Svara

Sv: Finns tabell??

Postades av 2003-04-02 12:44:06 - Andreas Hillqvist

Eftersom du utelämnade den informationen så antog jag att du använde ADO Genom VB i VB.
Inte DAO genom VB i Access. Då kan du istället skriva:
<code>
Public Function FindTable(TableName As String) As Boolean
Dim db As DAO.Database
Dim TableDef As DAO.TableDef
Set db = CurrentDb
For Each TableDef In db.TableDefs
If TableDef.Name = TableName Then
FindTable = True
Exit For
End If
Next
End Function
</code>
Eller den lite fulare varianten:
<code>
Public Function FindTable(TableName As String) As Boolean
Dim db As DAO.Database
Dim TableDef As DAO.TableDef
On Error Resume Next
Set db = CurrentDb
Set TableDef = db.TableDefs(TableName)
FindTable = Not TableDef Is Nothing
End Function
</code>


Svara

Sv: Finns tabell??

Postades av 2003-04-02 13:02:47 - Michael Ziegler

Sorry Andreas!
Får nu felmeddelande "User defined type not defined" på dimensioneringen av db (Dim db As DAO.Database)??

Mvh
MiZ


Svara

Sv: Finns tabell??

Postades av 2003-04-02 13:14:13 - Tomas Lundgren

Jag använder en liknande funktion men jag kollar om det finns en fråga. Du kan snickra om den och kolla tabeller istället.

Function ExistQry(strQryName As String) As Boolean
Dim db As Database
Dim i As Integer
Set db = CurrentDb

db.QueryDefs.Refresh
ExistQry = False
For i = 0 To db.QueryDefs.Count - 1
If strQryName = db.QueryDefs(i).Name Then
'Frågan finns
ExistQry = True
Exit For
End If
Next i
Set db = Nothing
End Function


Svara

Sv: Finns tabell??

Postades av 2003-04-02 13:27:02 - Michael Ziegler

Testade att ta bort deklarationen av db och tabledef då funkar det!! Men undrar ändå var som krävs för att kunna deklarera som Database resp. TabelDef??

Tack för hjälpen!!

Mvh
MiZ


Svara

Sv: Finns tabell??

Postades av 2003-04-02 15:39:31 - Andreas Hillqvist

Det är en bugg i Access 2000 (tror även senare versioner lider av det).
Lägg till en referens till "Microsoft DAO X.XX Object Library". Versionsnummer (X.XX) är beroende av vilken Access du använder. Har för mig att det är Access 97 = 3.51, Access2000 = 3.6 osv...


Svara

Nyligen

  • 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
  • 20:22 Spel
  • 17:07 Snabb och trevlig webbplats utan l

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 120
27 958
271 737
514
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
Expand
next previous
Close

Previous

0/0

Next