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

Hvilken kolonnedatatype skal jeg bruge til at gemme store mængder tekst eller html

Du skal bruge TEXT som de andre sagde, men der er nogle vigtige råd hver gang du bruger TEXT eller BLOB:afkoble dem fra din basistabel da de virkelig bremser adgangen til bordet. Forestil dig følgende struktur:

CREATE TABLE article (
    id INT(10) UNSIGNED,
    title VARCHAR(40),
    author_id INT(10) UNSIGNED,
    created DATETIME,
    modified DATETIME
);

CREATE TABLE article_body (
    id INT(10) UNSIGNED,
    body TEXT
);

Når du angiver artikler, kan du bruge article tabel (sidste 5 artikler af forfatter 33):

SELECT id, title FROM article WHERE author_id=33 ORDER BY created DESC LIMIT 5

Og når nogen virkelig åbner artiklen, kan du bruge noget som:

SELECT a.title, ab.body
FROM article AS a
   LEFT JOIN article_body AS ab ON ab.id = a.id
WHERE a.id=82


  1. Forespørgsel efter 2 tabeller i en enkelt forespørgsel

  2. WAMP-server i grøn, men få kun 404

  3. Slut dig til os for en introduktion til adgang med SQL Server

  4. Brug af LOAD DATA LOCAL INFILE i Java