C CoolDude Medlem sedan aug. 2000 304 inlägg Trådstart 2 okt. 2000 14:48 #1 Är det någon som vet hur man skapar en ny tabell med hjälp av ett asp script?
Det fungerar att lägga till fält i befintliga tabeller.
Men skulle vilja kunna skapa en ny tabell åsså.
Är det någon som vet hur man får till ett sådant script?
Använder mig av Access2000 på IIS 5
Bire Medlem sedan dec. 1999 19 074 inlägg Tråden flyttas till: ASP & VBSCRIPT
P PatrikB Medlem sedan mars 2000 2 836 inlägg Hello,
med denna kod kan du skapa en tabell:
<%
On Error Resume Next
Set objConn= Server.CreateObject("ADODB.Connection")
objConn.Provider = "Microsoft.Jet.OLEDB.4.0"
objConn.ConnectionString = "Data Source=x:\mindatabas.mdb"
objConn.Open
strSQL = "CREATE TABLE MIN_TABELL"
objConn.Execute(strSQL)
If err.Number <> 0 Then
Response.Write "Tabellen skapades inte.<br>" & _
"<b>[ERROR]:</b> " & err.Number & _
"<br>" & err.Description
Else
Response.Write "Tabellen skapades!."
End If
objConn.Close
Set objConn = nothing
%>
cya,
PatrikB
B brw Medlem sedan juli 2000 619 inlägg Appropå skapa en tabell..
hur lägger man till kolumner i tabellen sen??
någon som har en kodsnutt att dela med sig av?
/brw
P PatrikB Medlem sedan mars 2000 2 836 inlägg Hello,
lite mer kod som skapar en ny tabell med fälten:
FLD_ID räknare primärnyckel
FLD_NAME text(50)
OBS!!! för Access DB
<%
On Error Resume Next
Set objConn= Server.CreateObject("ADODB.Connection")
objConn.Provider = "Microsoft.Jet.OLEDB.4.0"
objConn.ConnectionString = "Data Source=x:\min_databas.mdb"
objConn.Open
strSQL = "CREATE TABLE TBL_TEST " & _
"(FLD_ID COUNTER NOT NULL PRIMARY KEY, FLD_NAME TEXT(50))"
objConn.Execute(strSQL)
If err.Number <> 0 Then
Response.Write "<B>[ERROR]:</B> " & err.Number & "<br>" & err.Description
End If
objConn.Close
Set objConn = nothing
%>
cya,
PatrikB
C CoolDude Medlem sedan aug. 2000 304 inlägg Tack PatrikB!
*springer in i labbet*
(mummlandes) - Hmm asp, asp, asp.
- Wee..! Fick iaf ett OK!
*Tebax från labbet*
Jepp Det verkar funka.. Märkligt det var inte "så" stor skilnad på vad jag använde tidigare...?
Verkar som att det är kopplingen till databasen som skiljer sig bara.....!!!
Många Tack! PatrikB
C CoolDude Medlem sedan aug. 2000 304 inlägg Hmmm.....
Satt igår då å pillade å pillande med att få till den databas som skall till att användas, men kom bara inte på hur man sätter Primär Nyckel samt får ett AutoNumber fält...
strSQL = "CREATE TABLE TBL_TEST " & _ "(FLD_ID COUNTER NOT NULL PRIMARY KEY, FLD_NAME TEXT(50))"objConn.Execute(strSQL)
Kan deta vara svaret?
Vide Medlem sedan dec. 1999 8 577 inlägg För att sätta en räknare så använder du helt riktigt "counter", men vad primary key blir vet jag faktiskt inte... men skulle gärna vet...
Mvh, Vide
C CoolDude Medlem sedan aug. 2000 304 inlägg Tja.. Om Man Läser PatrikB's andra inlägg här ovan så skulle det kunna fungera......
(Synd man inte kan sitta på jobbet å trixa... (Byta kanske?) med sina script! Finns inte ens en vettig Data här... )
Hoppades på rätt svar innan jag får fortsätta hemmavid lixom.
P PatrikB Medlem sedan mars 2000 2 836 inlägg Hello,
PRIMARY KEY sätter just en Primärnyckel ....
Testa att köra detta lokalt så får ni se att nyckeln kommer fram när ni tar upp db och redigerar i Access ;o)
Man kan bara skapa en tabell, tom sådan genom att bara köra:
strSQL = "CREATE TABLE TBL_MIN_TABELL"
objConn.Execute(strSQL)
För att sedan lägga till fält:
strSQL = "ALTER TABLE TBL_MIN_TABELL ADD FLD_FALT COUNTER NOT NULL PRIMARY KEY"
objConn.Execute(strSQL)
Denna kod skapar ett fält, FLD_MITT_FALT, som "räknare" och primär nyckel.
cya,
PatrikB
C CoolDude Medlem sedan aug. 2000 304 inlägg PatrikB:
Tack!
Hade missat COUNTER NOT NULL medans resten provade jag dock....
Samt att NU när jag Läser Ser jag att det var Alter inte under Create fasen...
Synd att du inte e Tjej då kunde du fått en riktig PUSS.. (om bara nu jag inte hade varit 'så' Äcklig)
Vide Medlem sedan dec. 1999 8 577 inlägg
Man kan bara skapa en tabell, tom sådan genom att bara köra
Inte riktigt sant, man kan lägga in fält samtidigt som man skapar tabellen faktiskt...
Mvh, Vide
C CoolDude Medlem sedan aug. 2000 304 inlägg Vide:
Hur gör du då som?
Eftersom att "Create Table Ny_Tabell"
Inte godkänns om du lägger dit mer text.
Däremot går det att lägga till flera Columner samtidigt.
Vide Medlem sedan dec. 1999 8 577 inlägg Exempel:
mySQL = "CREATE TABLE tblHuiYang (fldAuto Counter)"
P PatrikB Medlem sedan mars 2000 2 836 inlägg Hello,
Vide:
Kolla mitt inlägg med varningen OBS!! Endast Access DB.... .... den koden gör en tabell och alla fälten samtidigt.
[redigerat]
Kolla koden ordentligt så ser ni att strSQL inte e på samma rad utan binds ihop med & _ kanske har ni missat det
[/rediera]
Skrev oxå att man kan bara göra en tabell först och sedan skapa fälten i den inte att det endast går att först göra en tabell och sedan fälten =) ... lite fel formulerat vart det ... sorry.
cya,
PatrikB
Vide Medlem sedan dec. 1999 8 577 inlägg Missade nog den
Men CoolDude undrade, så jag visade...
Mvh, Vide
J jispir Medlem sedan maj 2001 1 343 inlägg Hur gör man för att bara lägga till fält då? *detta var nytt det visste jag inte*
Vide Medlem sedan dec. 1999 8 577 inlägg Se PatrikBs inlägg här ovan:
strSQL = "ALTER TABLE TBL_MIN_TABELL ADD FLD_FALT COUNTER NOT NULL PRIMARY KEY"
objConn.Execute(strSQL)
C CoolDude Medlem sedan aug. 2000 304 inlägg Efter litet pillande så vart det enligt skisserna.
Tack! PatrikB & Vide.
En annan fråga som gäller detta.
Kan man fylla i "default" värdet i databasen på en gång, samtidigt som den skapar kolumnerna?
Så man slipper fylla i det efteråt....!
P PatrikB Medlem sedan mars 2000 2 836 inlägg Hello igen,
visst går det, att sätta ett default värde:
strSQL = "CREATE TABLE TBL_TABLE (FLD_ID COUNTER NOT NULL PRIMARY KEY, " & _
"FLD_FIELD TEXT(50) DEFAULT Test)"
Cya,
PatrikB