---
title: "Databasstruktur"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/40748-databasstruktur"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "LAMP"
published: "2002-04-02T19:23:59.000Z"
updated: "2002-07-02T10:46:54.000Z"
replies: 9
views: 528
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/databaser-sql/40748-databasstruktur"
---

# Databasstruktur

## #1 — LAMP, 2002-04-02T19:23Z

Hej

jag skulle vilja ha lite synpunkter och förslag på följande artikelsystem. Ändringar och förbättringar?

```
Ny tabellstruktur:			Beskrivning:			Exempel:

Tabell Kategori:

* intId (räknare, mediumint, (2))	(Huvudkategori id unikt)	20
  strKat (varchar, (150)) 		(Namn på huvudkategori)		Datorer

Tabell subKategori:

  intSubKatId (Räknare, mediumint, (2))	(Subkategori id unikt)		62
  strSubKatNamn (varchar, (150))	(Namn på Subkategori)		Hårdvara
* intKatId (mediumint, (2))		(Huvudkategori id)		20

Tabell Artikel:

  intArtikelId (räknare, int(5))	(artikel id unikt)
* intKatId (mediumint, (2))						20
  intKategori (mediumint, (2))						62
  strArtikelRubrik (varchar, (150))
  strSkribent (varchar, (30)) 
  dtePubDate (datetime, (0000-00-00 00:00:00))
  strText mediumtext 
  strSkribentEpost (varchar, (100))

* = relation
```

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

## #2 — LarsG, 2002-04-02T19:30Z

Varför har du med intKatid i tabellen Artikel? Det räcker ju att intKategori har en relation till subkategori.

Jag skulle nog lägga information om skribenter i en egen tabell.

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

## #3 — LAMP, 2002-04-02T19:38Z

> Varför har du med intKatid i tabellen Artikel? Det räcker ju att intKategori har en relation till subkategori.

 

Det har du så rätt i, blind är man ibland. :)

Informationen om skribenten tål att tänkas vidare på.

Jag kom på en fundering till. Man vill helst ha med lite bilder i en artikel. Artiklarna kommer bli av förklarande karaktär.

Hur gör man på ett smart sätt (databasstrukturmässigt) för att kunna lägga in varierat antal bilder på ett enkelt sätt. mysql:s inbyggda funktioner i select-frågor är minst sagt begränsade.

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

## #4 — LarsG, 2002-04-02T19:42Z

Det får bli en tabell till där du har artikelID och sökväg till bilden.

> mysql:s inbyggda funktioner i select-frågor är minst sagt begränsade.

Visserligen håller jag med, men hur kommer det in i bilden?

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

## #5 — LAMP, 2002-04-02T19:47Z

> Visserligen håller jag med, men hur kommer det in i bilden?

 

Det blir mer komplicerat att hämta ut rätt data på ett effektivt sätt. Är då tabellstrukturen undermålig blir det ännu svårare. Därför bör man tänka till lite extra i databasstrukturen till en mysql databas för att man har sämre verktyg än med t ex sql-server.

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

## #6 — LAMP, 2002-04-02T21:58Z

Nu är jag tillbaka, lika frågvis som innan.

Nu blir det i följande steg:

Kategori --\> Subkategori --\> Artikelrubrik

Men allt eftersom sidan växer behöver man kanske:

Kategori --\> Subkategori --\> Subkategori2 --\> Artikelrubrik

Hur bör man förändra ovanstående struktur så det är möjligt att i viss mån göra subkategorier mer flexibelt. Kan man med mysql:s select-verktyg ha.

Kategori --\> Subkategori --\> Subkategori2 --\> Artikelrubrik

utan rekursion? Jag tänkte ha ovanstående som maxdjup. Om inte hur bör strukturen förändras och hur bygger man en sql-fråga som loopar ut:

Kategori
Subkategori
Subkategori2
Artikelrubrik

Tacksam för förslag.

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

## #7 — Tim, 2002-04-02T22:02Z

Hej, jag måste få passa på att fråga detta.

Är det bättre att dela upp artikel strukturen på flera tabeller än att ha allt i en tabell? Går det snabbare kanske?

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

## #8 — LAMP, 2002-04-03T22:47Z

Jag använder strukturen ovan med små förändringar som du tyckte LarsG. Tack för dina synpunkter!

Nu ska jag generera en meny utifrån detta. Jag använder följande kod.

Kan man göra på ett enklare sätt?

Tacksam för synpunkter ;)

```
sql ="SELECT strHeader1Name, intHeader1Id FROM header1 ORDER BY strHeader1Name ASC"
arrHeader1 = con.Execute(sql).GetRows()

For I = 0 To UBound(arrHeader1,2)

strHeader1 = arrHeader1(0,I)
intHeader1Id = arrHeader1(1,I)

Response.Write "<p><b>" & strHeader1 &"</b></p>"

sqlstmt ="SELECT strHeader2Name, intCurrentHeader1Id FROM header2 WHERE intCurrentHeader1Id = "&intHeader1Id&" ORDER BY strHeader2Name ASC"
arrHeader2 = con.Execute(sqlstmt).GetRows()

For Z = 0 To UBound(arrHeader2,2)

strHeader2 = arrHeader2(0,Z)
intHeader2Id = arrHeader2(1,Z)

Response.Write "<p>&nbsp;&nbsp;" & strHeader2 &"</p>"

Next 
Next
```

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

## #9 — LAMP, 2002-04-04T20:16Z

Ingen som har en synpunkt?

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

## #10 — Brimba, 2002-07-02T10:46Z

Varför vill du inte använda rekursion?

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/40748-databasstruktur
