og du kan ikke bare åbne din database i Access? så er det nok det nemmeste i hele verden. Er det internet (du skriver ASP) så download databasen, ret og upload
Synes godt om
Slettet bruger
25. maj 2005 - 19:16#2
Det er jo ikke halv så smart som at redigerer online, så kan du gøre det lige hvor du er, og hvilken forbindelse du sidder på, uden at lukket siden ned i den periode hvor der uploades, og så der ikke forsvinder noget som en bruger har tilføjet, fordi du uploader en der er hentet lige inden, og så går det ikke stærkt når du ligger med database på flere MB.
Men det er faktisk meningen at der skal ændres i alt, altså både Felttypen (VarChar osv.) længde (op til 255) og så navnet. Men det er ihvertifald en start at kunne omdøbe dem. Jeg har prøvet at bruge det fra MSDN, med deres eksempel:
Dim rs, i Set rs = CreateObject("ADOCE.Recordset.3.1") rs.Open "CREATE TABLE changeme (f1 varchar)" rs.Open "ALTER TABLE changeme TO changed" rs.Open "ALTER TABLE changed RENAME f1 TO firstfield" rs.Open "ALTER TABLE changed ADD secondfield varchar" rs.Open "ALTER TABLE changed ADD lastfield varchar" rs.Open "ALTER TABLE changed MOVE lastfield BEFORE firstfield" rs.Open "changed" For i = 0 To rs.fields.Count - 1 MsgBox rs.fields(i).Name Next rs.Close rs.Open "DROP TABLE changed" Set rs = Nothing
Kan jeg ikke fatte hovde og hat i, og den melder også noget med noget Active-X.
Jeg kan stadig ikke få det til at virke med typerne.
Der kommer denne fejl: Denne handling er ikke tilladt i denne sammenhæng.
Dim adVarChar adVarChar = 200 tbl.Columns("etto").Type = adVarChar (Fejlen er til denne linie) tbl.Columns("etto").DefinedSize = 50 (Vil tro samme fejl kommer her)
<% Option Explicit %> <% Response.ContentType = "text/plain" Dim db db = "C:\Databases\MSAccess\Test.mdb" Dim cat Set cat = Server.CreateObject("ADOX.Catalog") cat.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & db Dim tbl For Each tbl In cat.Tables Response.Write "tabel " & tbl.Name & vbCrLf Dim col For Each col In tbl.Columns Response.Write " kolonne " & col.Name & " " & col.Type & " " & col.DefinedSize & vbCrLf Next Dim idx For Each idx In tbl.Indexes Response.Write " index " & idx.Name & " " & idx.PrimaryKey & vbCrLf Dim idxcol For Each idxcol In idx.Columns Response.Write " index kolonne " & idxcol.Name & vbCrLf Next Next Next %>
Sådan :D det virker, du er for sej til det der programmering ;) Jeg har lige et spørgsmål eller to mere.. Kan man via asp slette et primær felt? Kan man via asp fjerne autonummering? Kan man ændre felt størrelsen på et Integer felt?
Skal jeg ikke oprette et nyt indlæg, jeg synes jeg har kørt dig langt på de her 200 points?
re 1) måske - skal formentligt ske via ALTER TABLE Igen re 2) du kan ændre felt typen fra COUNTER til INTEGER med en ALTER table re 3) jeg vil tro at du med en ALTER TABLE Kan ændre fra VARCHAR(20) til VARCHAR(40)
nej - så skal de oprettes som seperate spørgsmål fra start af
Synes godt om
Slettet bruger
30. maj 2005 - 21:41#51
1) Når jeg prøver at bruge den alter jeg normalt sletter med, så vil den ikke sltte primær 2) Det prøver jeg :) 3) Det virker fint når det er varchar, men den vil ikke når det er integer, og kan ikke finde ud af hvad man skal lave anderledes ved en integer :(
tabel E kolonne id 3 0 kolonne id2 3 0 index PrimaryKey True <------------------------- index kolonne id index id False index kolonne id index id2 False index kolonne id2
Synes godt om
Slettet bruger
31. maj 2005 - 20:55#60
nåå hehe så constraint skal erstates med feks. Id eller hvad?
Synes godt om
Slettet bruger
31. maj 2005 - 22:01#61
nåå nu er jeg med. Men den jeg normlat har siger bare at man ikke kan slette en primary, men den har ikke constraint ind i alter, jeg vil gå ned og prøve, håber det virker
Synes godt om
Slettet bruger
01. juni 2005 - 10:19#62
Jeg er lost, har prøvet alverdens kombinationer.
sql = "ALTER TABLE `test` DROP constraint(id)" giver: [Microsoft][ODBC Microsoft Access-driver] Der er en syntaksfejl i ALTER TABLE-sætningen.
sql = "alter table test drop constraint PrimaryKey" giver: [Microsoft][ODBC Microsoft Access-driver] CHECK-begrænsning 'PrimaryKey' findes ikke.
sql = "alter table test drop constraint id" giver: [Microsoft][ODBC Microsoft Access-driver] CHECK-begrænsning 'id' findes ikke.
id lyder som feltets bavn ikke som constraintens navn
Synes godt om
Slettet bruger
01. juni 2005 - 13:40#66
ahhh vi snakker 2 forskellige ting, jeg troede at du mente navn når du sagde constraintens. Hvad kan der feks stå istedet, tror jeg ved hvad du mener, skal bare lige se :)
Synes godt om
Slettet bruger
01. juni 2005 - 15:36#67
tabel test kolonne et 203 0 kolonne fem 3 0 kolonne fire 202 50 kolonne id 3 0 index id Falsk index kolonne id
det er den der hedder id der er primary key, jeg forstår bare ikke hvorfor den siger falsk, på de fleste andre siger den sand, men det er den der id, hvad skal der så stå i stedet for "constraintens"?
Synes godt om
Slettet bruger
01. juni 2005 - 15:41#70
jeg har lige tjekket den er sat til primær og til autonummering så det er den
Synes godt om
Slettet bruger
01. juni 2005 - 15:55#71
ok nu tager jeg så en af tabllerne hvor det virker:
tabel soeg kolonne beskrivelse 203 0 kolonne id 3 0 kolonne sogeord 203 0 kolonne titel 202 25 kolonne url 202 100 index PrimaryKey Sand index kolonne id
hvad skal jeg så sætte ind? Men jeg kan ikke forstå hvorfor den ikke vil vise sand på nogen af dem. Du kan hente database og output fra din kode her, hvis det er: http://bjarkes.dk/Maerkeligt.zip
Synes godt om
Slettet bruger
03. juni 2005 - 15:27#72
nå ok, jammen så prøver jeg bare selv, tusinde tak for hjælpen :D Har givet dig 5 karma, har adlrig prøvet at få så god hjælp før :)
Bjarke
Synes godt om
Ny brugerNybegynder
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.