sql >> Database teknologi >  >> RDS >> Mysql

Tjek for værdi i MySQL-rækken

At gemme dine værdier til et forum for brugere, der endnu ikke har læst emnet (hvilket er en dårlig idé), vil ikke være skalerbart. Gør det omvendt hvis du virkelig er nødt til det, da du også vil have problemer forbundet med at skulle tilføje poster til hvert emne i din database ved en ny brugertilmelding.

I stedet for at give afkald på en relationstabel, prøv i stedet at gøre det som følger:

Table: topics
+----+-------+------+-----
| id | title | body | ...
+----+-------+------+-----
| 1  | xyz   | .... | ...

Table: replies
+----+-------+------+-----
| id | title | body | ...
+----+-------+------+-----
| 3  | xyz   | .... | ...

Table: read_topics
+---------+----------+
| user_id | topic_id |
+---------+----------+
| 2       | 1        |

Din tilgang, selvom den er mulig (og lettere at forestille sig), begynder at bryde sammen, når du har enorme mængder af brugere, og skalerbarhed er, hvad du hentydede til i kommentarerne. Et andet problem her er, at med din tilgang har du massiv præstationsstraffe, fordi du skal trække dataene fra databasen, opdele dem og derefter manipulere og genkombinere, før du foretager en anden transaktion. Du har også problemer med at få tabellen skrevet til af to CGI-tråde på samme tid . God fornøjelse med det...

Du bruger et værktøj til datamanipulation, sortering, datarelationer og lagring, så brug det til dem alle, ikke kun som et dumpested for information.



  1. Vælg forskellen mellem store og små bogstaver ved hjælp af mysql, php og pdo

  2. 2 måder at konvertere et tal til oktal i MySQL

  3. Brug af pseudokolonner med en sammenkædet server

  4. Synkroniser 2 tabeller af forskellige databaser - MySQL