13. maj 2003 - 20:34Der er
13 kommentarer og 2 løsninger
DB m. 8 kolonner og uendelige rækker - hvordan ?
Hej.
Jeg er begyndt at kode lidt PHP, og det går hastigt fremad :)
Jeg kan nu finde ud af, at hente og skrive data til en MySQL DB. Men jeg kan (hehe) imidlertid ikke hitte ud af, hvilke koder man benytter for at oprette en database. Jeg benytter "MyPHPadmin", og vil gerne vide, hvordan jeg laver en tabel indeholdende flg. kolonner :
Navn, adresse, by, fødselsdag, user-name, password og e-mail.
- og da der self. skal kunne laves uendeligt mange brugere, så skal antallet af række være uendeligt.
- ligeledes vil jeg gerne vide, hvordan man angiver, om input'et er tal eller bogstaver, samt sætte et max/min. for hvor meget hver celle kan indeholde (hvis det da er nødvendigt. Det er det jo under access)
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Men: - der er altid mulighed for uenedeligt mange rækkeri tabeller - et tal felt hedder INTEGER i SQL - et tekst fekt hedder VARCHAR(n) i SQL (n=antal tegn)'
NB: der er også andre muliogheder end lige netop INTEGER og VARCHAR(n), men det burde være OK til at starte med.
1) Hvis du vil lave den tabel du beskriver, skal du bare skrive:
CREATE TABLE tabelnavn ( navn VARCHAR(20) NOT NULL, adresse VARCHAR(50) NOT NULL, bynavn VARCHAR(30) NOT NULL, user-name VARCHAR(10) NOT NULL, password VARCHAR(10) NOT NULL, e-mail VARCHAR(30) NOT NULL)
I myadmin er det dog ikke nødvendigt at bruge SQL sætninger, da dens interface er sat op til at fortolke 'menneskesprog', men det er altid godt at øve sig :)
2) Antallet af brugere du kan putte ind er per definition uendeligt.
3) Arne's kommentar er helt korrekt. Du kan også sætte begrænsning på antal INTEGER.
CREATE TABLE tabelnavn ( navn VARCHAR(20) NOT NULL, adresse VARCHAR(50) NOT NULL, bynavn VARCHAR(30) NOT NULL, fødselsdag VARCHAR(30) NOT NULL, user-name VARCHAR(10) NOT NULL, password VARCHAR(10) NOT NULL, e-mail VARCHAR(30) NOT NULL)
Grunden til at det hedder bynavn, og ikke bare by, er fordi by er et reserveret ord i SQL. NOT NULL betyder bare at felterne ikke må være tomme, det kan du sætte som du vil.
- Men hvad med fødselsdagen ? Bør jeg ændre den til INTEGER, eller fungere VARCHAR med både tal og bogstaver ? - og hvad bør jeg i givet fald benytte, hvis VARCHAR fungere med begge typer ? Jeg går ud fra, at INTEGER er bedst ?!
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.