webForumDet fria alternativet

Skapa databas i ASP

ASP

4 svar · 221 visningar · startad av kristoffer

Medlem sedan juni 20001 257 inlägg
Frågan#1

Jag såg en kodsnutt på http://asp.superexpert.com/code/code.aspx?id=153
som tydligen skulle kunna skapa en Access-databas. Koden ser ut så här:

<!-- #include virtual="common/adovbs.inc" -->

<% 
   '  Create New Database 
   Set myDB = Server.CreateObject( "ADOX.Catalog" ) 
   myDB.Create "Provider=Microsoft.Jet.OLEDB.4.0;data source=c:\testDB.mdb"

   '  Create New Table 
   Set myTable = Server.CreateObject( "ADOX.Table" ) 
   myTable.Name = "testTable" 
   myDB.Tables.Append myTable 

   '  Add an AutoIncrement Column 
   Set col = Server.CreateObject( "ADOX.Column" ) 
   With col 
    .Name = "identityCol" 
    .Type = adInteger 
   END With 
   Set col.ParentCatalog = myDB 
   col.Properties( "Autoincrement" ) = TRUE 
   myTable.Columns.Append col 

   '  Add Some More Columns 
   myTable.Columns.Append "username", adVarWChar, 50 
   myTable.Columns.Append "Age", adInteger, 4 
%>

Om jag ändrar raden:

myDB.Create "Provider=Microsoft.Jet.OLEDB.4.0;data source=c:\testDB.mdb"

till:

"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("\db\stats.mdb")

så får jag felmeddelandet

No such interface supported

Vad krävs?

[Redigerat av kristoffer den 22 nov 2000]

[Redigerat av kristoffer den 22 nov 2000]

Medlem sedan dec. 19998 577 inlägg
#2

Jag tycker det ser ut som om du behöver ADO+ installerat... men det har jag tyvärr ingen erfarenhet om än så länge...

Jag grundar det på denna reden:

Set myDB = Server.CreateObject( "ADOX.Catalog" )

Och där står det tydligt ADOX... Men det kanske finns en annan förklaring till detta...

------------------
It's not that I'm afraid to die. I just don't want to be there when it happens.
Kom hem till mig...

Medlem sedan mars 20002 836 inlägg
#3

Hello,

testade koden och du behöver ej asp+ för att köra adox.

Kör på en IIS 4 med Script Engine 5.5, MDAC 2.5x och det funkar klockrent. Det jag tror är att den vanliga providern inte stödjer adox som MS Jet gör.

Förstår inte varför byta från jet då den providern har bättre prestanda.

ADOX dokumentation:
Finnes här

cya,

------------------
'*********************
Response.Write("PatrikB")
Response.End
'*********************

[Redigerat av PatrikB den 23 nov 2000]

[Redigerat av PatrikB den 23 nov 2000]

Medlem sedan juni 20001 257 inlägg
#4

Hm. Nu förstår jag inte. Skall det stå som det står för att jag skall kunna skapa en access-databas?

------------------
http://www.gratistavlingar.com

Medlem sedan mars 20002 836 inlägg
#5

Jepp,

du ska inte ändra providern .... utan låta Microsoft.Jet.OLEDB.4.0 vara ..... den e den bästa providern att använda sig av ..

cya,

------------------
'*********************
Response.Write("PatrikB")
Response.End
'*********************

247 ms totalt · 4 externa anrop · v20260731065814-full.20824b9f
119 ms — deklarationer (db)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)