AsaMedlem sedan dec. 20011 860 inlägg Vaför får jag syntaxfel i denna kodsnutt?
<%Set Conn = createObject("ADODB.Connection")
Conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("dbq/galleri.mdb")
Conn.Execute("ALTER TABLE galleri ADD visa int default 0")
Conn.Close
Set Conn=Nothing%>
VideMedlem sedan dec. 19998 577 inlägg Testa:
"ALTER TABLE galleri ADD COLUMN visa int default 0"
AsaMedlem sedan dec. 20011 860 inlägg Nää! Undra vad det är som strular :/
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][Drivrutin för ODBC Microsoft Access] Syntaxfel i ALTER TABLE-instruktion.
/jobb/sexziten/skapa.asp, line 4
Det är Default 0 som strular! Tar jag bort det så funkar det att skapa. Testat å sätta '' runt 0 men funkar ej.
AsaMedlem sedan dec. 20011 860 inlägg Jag ändra till
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &Server.MapPath("dbq/galleri.mdb")
Och då fick jag inga felmess men standardvärdet blev inte satt!
VideMedlem sedan dec. 19998 577 inlägg Lite intressant läsning ang. ditt problem: http://dbforums.com/archives/t317567.html
AsaMedlem sedan dec. 20011 860 inlägg Jag gjorde så här och då funkar det. Får köra med text på fältets datatyp tills vidare
<%Set Conn = createObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &Server.MapPath("dbq/galleri.mdb")
Conn.Execute("ALTER TABLE galleri ADD column visa varchar(1) default 0")
Conn.Close
Set Conn=Nothing%>
nikoMedlem sedan juni 20022 599 inlägg Access/ADO:ns ALTER TABLE-syntax stöder inte default.
Om du har tillgång till ADOX så kan du göra så här:
set cat = Server.CreateObject("ADOX.Catalog")
set col = Server.CreateObject("ADOX.Column")
cat.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & Server.MapPath("dbq/galleri.mdb")
With col
.Name = "Visa"
.Type = 3 'adInteger
Set .ParentCatalog = cat
.Properties("Default") = 0
End With
cat.Tables("Galleri").Columns.Append col
Set cat = Nothing