11. august 2003 - 17:21Der er
16 kommentarer og 1 løsning
Hjælp til MySQL
Jeg har nu i et stykke tid arbejdet med access-databaser og egentligt været ret tilfreds med det.
Men jeg har nu fået et nyt web-hotel hvor de ikke understøtter det, så jeg er tvunget til at bruge MySQL
Jeg har kigget lidt på administrationen (PHP-MyAdmin) men jeg fatter simpelthent ikke en skid af det. Det at jeg ikke har en "fysisk" database at arbejde med, kan jeg slet slet ikke fatte.
Så hvis der er en der har tid/lyst til at forklare mig hvordan dælen det virker, ville det være ret lækkert.
PS. Jeg arbejder udelukkende i ASP, så hvis der er lidt hjælp til at få mine sql-sætninger skrevet om ville det osse være fint.
hæhæ... ved det godt, men jeg er fuldstændig på bar bund. Så det er lidt svært for mig.
Men mit første problem er, når jeg (via adminen) vil oprette en ny tabel i databasen, f.eks. "nyheder", der skal indeholde ID, dato, overskrift, nyhedstekst, forfatter. Allerede der melder den en fejl som jeg ikke fatter.
Sådan, så lykkedes det for mig at oprette en tabel "nyheder".
Jeg angav Feltet "ID" til at være af typen "INT" og primær... Har jeg så et unikt ID ?
Jeg har herefter et par sætninger (som jeg tidligere har brugt med access) jeg skal ha' omskrevet, er det noget du kan hjælpe med (eller er sætningerne de samme?) :
Ok... er der forsk. dato formater ??? Jeg troede bare det hed dd-mm-åååå...?!?!
Hov.... nu kan jeg se at den også sætter min dato til at være unik, det er da ikke så godt, så kan jeg kun indtaste 1 nyhed om dagen... hvordan kan jeg ændre det igen?
Den store forskel på Access og MySQL er, at med access har du en .mdb-fil, som er din database og med MySQL har du en adresse, da det er en server-baseret database. Jeg vil anbefale dig at bruge MySQL front, da det er et godt værktøj til administration af MySQL-databaser og ligner Access lidt mere end phpMyAdmin (det er ellers også et godt værktøj). Det du vil mærke mest forskel på til at starte med er øget hastighed og problemer med dato-formater. MySQL vil gerne have dem YYYY-MM-DD, men det er hurtigt klaret med denne funktion:
Function ConvertDate(dtmDate,intFormat) ' intFormat kan have 2 værdier. 0 eller 1 ' 0 = Returnerer dato og tid ' 1 = Returnerer kun dato
Den forstår jeg ikke? Din dato skal ikke være unik. Det er den fordi du har oprettet tabellen: CREATE TABLE `tabel` (`felt` TINYINT (3) UNSIGNED DEFAULT '0', UNIQUE(`dato`))
Du skal ikke bruge UNIQUE ved dato-feltet.
Du kan ændre det ved at slette feltet og oprette det igen uden UNIQUE:
ALTER TABLE `tabel` DROP INDEX dato, ADD INDEX felt (dato)
Det ved jeg godt, og jeg sætter den heller ikke til at være unik... Men når PhpMyAdmin, som jeg bruger, så laver tabellen, så er den det alligevel.... jeg FATTER DET IKKE !!!
Alle felter af typerne 'date' og 'int' bliver automatisk sat til at være både primær, indeks og unik... selvom jeg vælger de ikke skal det !
Det lyder underligt. Jeg kan desværre ikke hjælpe med phpMyAdmin - det er længe siden jeg har brugt det og har ikke adgang til det længere. Det er meget nemt at håndtere med MySQLfront.
Ok... men det er en "fast" database jeg har hos et webhtotel, så der har jeg vel ikke mulighed for at benytte andre programmer til at redigere i databasen, tror du ?
Jo, det vil jeg umiddelbart tro. Har du fået udleveret mysql-adresse, brugernavn og adgangskode? Så er det bare at taste det ind i mysqlfront, og så skulle det virke. Ellers skriv en mail til udbyderen og hør om de kan sende det til dig.
Jeg skylder "jinxit" nogen point, så han får dem her. Jeg opretter lige et nyt spm. og så får du de point.... Tak for hjælpen !
Synes godt om
Ny brugerNybegynder
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.