Avatar billede skildpadden Nybegynder
07. marts 2004 - 12:24 Der er 3 kommentarer og
1 løsning

Tjek om tabel findes i access db

Er der nogen der ved hvordan man kan tjekke om en tabel findes i access databasen?
Avatar billede eagleeye Praktikant
07. marts 2004 - 23:31 #1
Et eksempel på koden:

<%
ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.mappath("db10.mdb")
Set cat = Server.CreateObject("ADOX.Catalog")
cat.ActiveConnection = ConnStr

TabelNavn = "booking"
fundet = False
For Each Table In cat.Tables
  If UCase(Table.Name) = UCase(TabelNavn) Then
    fundet = True
    Exit For
  End If
Next
if fundet = true then
  Response.Write "Tabelnavnet findes"
else
  Response.Write "Tabelnavnet findes <i>ikke</i>"
end if
%>
Avatar billede skildpadden Nybegynder
08. marts 2004 - 12:11 #2
Hej eagleeye. Tak for dit svar. Jeg har prøvet at lægge din kode ind i min, men får fejl.

Min kode:

strDBPath = "C:\Stats\Stats.mdb"

strTABEL = "08-03-2004"


Set oConnection = CreateObject("ADODB.Connection")
oConnection.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & strDBPath

fundet = False
For Each Table In cat.Tables
  If UCase(Table.Name) = UCase(strTABEL) Then
    fundet = True
    Exit For
  End If
Next

if fundet = true then

else

    CREATE TABLE strTABEL
    (
    VirusName varchar(255)
    Count integer(9)
    )

end if


Kan du se nogen fejl her?
Avatar billede skildpadden Nybegynder
08. marts 2004 - 12:12 #3
Det den skal gøre, er at tjekke om der findes en tabel med samme navn som dags dato, hvis der gør skal den intet gøre, men hvis ikke skal den oprette en ny tabel med navn som dags dato.
Avatar billede eagleeye Praktikant
08. marts 2004 - 21:36 #4
Ja det er en forskel på mit eks og din kode. I det viste eks bruges ADOX.Catalog og du bruger en ADODB.Connection til databasen.

Hvis du vil bruge ADODB.Connection skal koden være sådan her:

<%
strDBPath = "C:\Stats\Stats.mdb"

strTABEL = "08-03-2004"


Set oConnection = CreateObject("ADODB.Connection")
oConnection.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & strDBPath

fundet = False
Set rs = oConnection.openschema(20)
Do until rs.eof
  If rs("TABLE_TYPE") = "TABLE" Then
    if rs("TABLE_NAME") = strTABEL then
      fundet = true
      exit do
    end if
  End if
  rs.movenext
Loop

if fundet = true then

else

    CREATE TABLE strTABEL
    (
    VirusName varchar(255)
    Count integer(9)
    )

end if
%>
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester