---
title: "skapa en tabell"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/44547-skapa-en-tabell"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "ampy"
published: "2002-05-25T21:35:36.000Z"
updated: "2002-05-27T08:42:36.000Z"
replies: 18
views: 595
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/44547-skapa-en-tabell"
---

# skapa en tabell

## #1 — ampy, 2002-05-25T21:35Z

Hur skapar man en tabell genom kod. Tabellen ska se ut så här:

ID - Räknare
medlem - Text
medlem_id - Tal
datum - Datum/Tid
rubrik - PM
text - PM
godkann - Text

Tabellen ska heta artiklar. 

Tabellen ska skapas i en access-databas. Hoppas någon kan skriva koden för detta.

Permalänk: https://www.webforum.nu/p/44547

## #2 — SPiN, 2002-05-25T22:03Z

```
CREATE TABLE [tabellnamn] (
     [fältnamn1] [fälttyp] [NULL/NOT NULL], 
     [fältnamn2] [fälttyp] [NULL/NOT NULL], 
     PRIMARY KEY([fält])
);
```

Där har du strukturen, så det är bara att lägga till dina egna fält... :)

Permalänk: https://www.webforum.nu/p/682006

## #3 — ampy, 2002-05-25T22:05Z

Man ska skriva fälttyperna på engelska va?

Permalänk: https://www.webforum.nu/p/682009

## #4 — LAMP, 2002-05-25T22:15Z

medlem_id - Tal --\> int(5)
datum - Datum/Tid  --\> datetime
rubrik - PM  --\> memo
godkann - Text  --\> text(50)

RED: Glömde räknaren:

ID - Räknare --\> ID counter(10)

Permalänk: https://www.webforum.nu/p/682016

## #5 — ampy, 2002-05-26T10:37Z

Har du gjort denna kod:

```
<% 
sql = "CREATE TABLE [artiklar] ([ID] [counter(10)], [medlem] [TEXT(50)] [NOT NULL], [medlem_id] [INT(5)] [NOT NULL], [datum] [DATETIME] [NOT NULL], [rubrik] [MEMO] [NOT NULL], [text] [MEMO] [NOT NULL], [godkann] [TEXT(50)] [NOT NULL])"

Connect.execute(sql)
%>
```

Då får jag 

Microsoft JET Database Engine fel '80040e14' 

Syntaxfel i fältdefinition. 

/80/Default.asp, line 382 

vad är felet?

Permalänk: https://www.webforum.nu/p/682141

## #6 — LAMP, 2002-05-26T10:44Z

Är jag inte helt ute och turnerar ska du inte ha \[...\] runt fälttypen och attribten null/not null. Och använder du NOT NULL måste du väl ange ett defaultvärde?

Permalänk: https://www.webforum.nu/p/682143

## #7 — ampy, 2002-05-26T10:45Z

Hur anger man ett defaultvärde då?

Permalänk: https://www.webforum.nu/p/682145

## #8 — @nders, 2002-05-26T10:47Z

> Och använder du NOT NULL måste du väl ange ett defaultvärde?

Nej.

Permalänk: https://www.webforum.nu/p/682147

## #9 — ampy, 2002-05-26T10:50Z

Men om jag skriver så här:

```
<% 
sql = "CREATE TABLE [artiklar] ([ID] counter(10), [medlem] TEXT(50) NOT NULL, [medlem_id] INT(5) NOT NULL, [datum] DATETIME NOT NULL, [rubrik] MEMO NOT NULL, [text] MEMO NOT NULL, [godkann] TEXT(50) NOT NULL)"

Connect.execute(sql)
%>
```

Så får jag detta felmeddelande:

Microsoft JET Database Engine fel '80040e14' 

Syntaxfel i CREATE TABLE-instruktion. 

/80/Default.asp, line 383

Permalänk: https://www.webforum.nu/p/682149

## #10 — LAMP, 2002-05-26T10:53Z

> *Ursprungligen av @nders*  
>
> > Och använder du NOT NULL måste du väl ange ett defaultvärde?
>
> 
> Nej.

Hittar access på ett eget då eller?

Permalänk: https://www.webforum.nu/p/682150

## #11 — @nders, 2002-05-26T10:57Z

Nej, vad ska du ha defaultvärdet till?
Access måste inte ha ett defaultvärde till not null-kolumner, men däremot måste varje post få ett värde vid insert.

ampy, prova:

```
<% 
sql = "CREATE TABLE [artiklar] ([ID] counter NOT NULL, [medlem] TEXT(50) NOT NULL, [medlem_id] INT NOT NULL, [datum] DATETIME NOT NULL, [rubrik] MEMO NOT NULL, [text] MEMO NOT NULL, [godkann] TEXT(50) NOT NULL)"

Connect.execute(sql)
%>
```

Mvh,

Permalänk: https://www.webforum.nu/p/682151

## #12 — ampy, 2002-05-26T11:05Z

Koden funkar nu @nders. Men hur ska jag göra så att kolumnen ID blir primärnyckeln?

Permalänk: https://www.webforum.nu/p/682155

## #13 — @nders, 2002-05-26T11:34Z

Det borde gå bra att i sin CREATE TABLE-instruktion använda PRIMARY KEY.

```
sql = "CREATE TABLE [artiklar] ([ID] counter NOT NULL PRIMARY KEY, .....
```

Om du inte vill skapa om tabellen får du använda ALTER TABLE på något sätt. Det är inte en syntax jag har i huvudet, så prova att söka här på wF. Jag vet att ALTER TABLE diskuterats ett flertal tillfällen.

Mvh,

Permalänk: https://www.webforum.nu/p/682167

## #14 — SPiN, 2002-05-26T22:27Z

Jag vet inte om ampy har fått det att fungera nu, men PRIMARY KEY ska enligt SQL-standarden ( Väl? ) stå sist i frågan;

```
CREATE TABLE minTabell (
     mittFält COUNTER NOT NULL, 
     mittAndraFält TEXT NULL, 
     PRIMARY KEY(mittFält)
);
```

ALTER TABLE fungerar så här:

```
ALTER TABLE [tabell] ADD [fältnamn] [typ] [NULL/NOT NULL]
```

Exempel:

```
ALTER TABLE minTabell ADD mittTredjeFält INT NOT NULL
```

Permalänk: https://www.webforum.nu/p/682478

## #15 — @nders, 2002-05-27T04:33Z

Primary Key måste väl ändå skrivas i anslutning till det fält man önskar göra till primärnyckel?

Permalänk: https://www.webforum.nu/p/682510

## #16 — LarsG, 2002-05-27T08:26Z

@nders: Nej
Spin: Nej

Permalänk: https://www.webforum.nu/p/682559

## #17 — @nders, 2002-05-27T08:30Z

LarsG, förklara gärna. :)

\*sitter som på nålar\*

Permalänk: https://www.webforum.nu/p/682561

## #18 — LarsG, 2002-05-27T08:39Z

Jaså, är det så spännande

Om det bara är en kolumn i primärnyckeln så kan man skriva

```
create table ogrish (aleb int primary key);
```

Det är också tillåtet att skriva

```
create table ogrish (aleb int,primary key(aleb))
```

Om man har flera kolumner i primärnyckeln så måste man använda den senare varianten

```
create table ogrish (aleb int, bleb dec,primary key(aleb,bleb))
```

Permalänk: https://www.webforum.nu/p/682567

## #19 — @nders, 2002-05-27T08:42Z

Om du har lust får du gärna fortsätta på det inlägget. ;)

Jo, det är klart det är intressant. Jag som är självlärd har inte så bra koll på hur saker och ting fungerar, utan har mest ett hum om hur man kan göra. I detta fall verkade jag humma lite fel... ;)

Red: nu hade du visst fortsatt. :)

Mvh,

Permalänk: https://www.webforum.nu/p/682570

---

Tråden på webben: https://www.webforum.nu/amne/asp/44547-skapa-en-tabell
