Avatar billede cpccorp Juniormester
28. februar 2004 - 17:21 Der er 9 kommentarer og
1 løsning

Kopier en tom tabel og indsætte nye data i den

Hvor kan man via asp kopiere en tabel og indsætte ny data i den, jeg har prøvet men det lykkedes ikke rigtigt, jeg fik en fejl om at tabellen eksisterede i forvejen'

kode:
    '********Opret puljetabel og position
    Set Apples2 = Server.CreateObject("ADODB.Connection")

ConnStr = "DRIVER={Microsoft Access Driver (*.mdb)}; "
ConnStr = ConnStr & "DBQ=" & Server.MapPath("../database/table.mdb")
Apples2.Open(ConnStr)
sql = "SELECT * INTO Pos" & som & " FROM Posskab"
  Apples2.execute(sql)
  sql = "SELECT * INTO List" & som & " FROM Listskab"
  Apples2.execute(sql)
  Apples2.close
 
ConnStr = "DRIVER={Microsoft Access Driver (*.mdb)}; "
ConnStr = ConnStr & "DBQ=" & Server.MapPath("../database/table.mdb")
Apples2.Open(ConnStr)

for x = 1 to request.form("hold")
        Apples2.Execute "INSERT INTO Pos" & som & "(ID,Pos) VALUES(" & x & "," & x & ")"
next
  Apples2.execute(sql)
  Apples2.close
  set Apples2 = nothing
Avatar billede eagleeye Praktikant
28. februar 2004 - 22:31 #1
Vil du lave en ny tabel eller flytte data fra en til en anden tabel?
Avatar billede cpccorp Juniormester
28. februar 2004 - 22:35 #2
Jeg vil kopiere en skabelontabel og indsætte nye data i den
Avatar billede cpccorp Juniormester
28. februar 2004 - 23:00 #3
Måske er den bedre løsning at oprette en ny tabel, med de samme felter, hvad synes I, jeg er lidt rundt på gulvet lige nu
Avatar billede eagleeye Praktikant
28. februar 2004 - 23:28 #4
Umiddelbart ved jeg ikke hvordan man lave en kopi af en tabel. Men du kan lav en ny på denne måde og man kan skrive direkte til tabellen med det samme:

<%
connStr = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("db101.mdb")

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open connStr

tal = 34384
nytnavn = "navn" & tal
SQL = "CREATE TABLE " & nytnavn & " (ID COUNTER PRIMARY KEY, tal int, restemail varchar(50), Forsidetekst varchar(100), Div varchar(100))"
Conn.Execute(SQL)

SQL = "insert into " & nytnavn & " (tal, restemail, Forsidetekst, Div) values (337,'mail','forsideteskte her','diverse')"
Conn.Execute(SQL)
Conn.Close
%>
Avatar billede cpccorp Juniormester
29. februar 2004 - 00:23 #5
varchar = antal tegn???
int = tal?

autonum = ??
Avatar billede eagleeye Praktikant
29. februar 2004 - 00:33 #6
En tekst kolonne laves med varchar og man skriver antal tegn i ()

Så dette: Forsidetekst varchar(100),
Giver en kolonne med navnet Forsidetekst med 100 karakter

int er tal

autonummer gøres med COUNTER PRIMARY KEY. Så i det eks vil man få en kolonne id som er autonummer.
Avatar billede eagleeye Praktikant
29. februar 2004 - 00:34 #7
Avatar billede cpccorp Juniormester
29. februar 2004 - 00:58 #8
hvis det ikke skal være primary key skrives der så bare counter??? Og læg så lige et svar det hjælper helt vildt......
Avatar billede eagleeye Praktikant
29. februar 2004 - 01:02 #9
ok ;)
Ja, så skriver man bare COUNTER
Avatar billede cpccorp Juniormester
29. februar 2004 - 01:15 #10
Tusind tak, det hjælper helt sikkert
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