sql >> Databasteknik >  >> RDS >> Mysql

Frågor om typer i MySQL

Det är sant att TEXT kan hantera vilken inmatning du vill placera i VARCHAR- eller CHAR-fält. Faktum är att TEXT kan hantera och data som du kanske vill lägga i DECIMAL, INT eller nästan vilken annan typ som helst. Med denna logik kan vi lika gärna göra varje kolumn till en TEXT-typ.

Men detta skulle vara ett misstag. Varför? Eftersom att använda lämplig kolumntyp för den förväntade inmatningen tillåter databasen att bättre optimera frågor, använder mindre diskutrymme och gör datamodellen lättare att förstå och underhålla.

När det gäller frågorna:en användarnamnskolumn bör använda VARCHAR(20), eftersom du vill och förväntar dig att de flesta användarnamn blir korta, vanligtvis inte mer än 10 - 20 tecken långa. För en recensionskolumn (som en filmrecension eller en bokrecension) skulle en TEXT-typ vara lämplig eftersom recensioner kan sträcka sig över ett stycke till flera sidor.

När det gäller index, prova denna länk:

http://20bits.com/articles/interview-questions-database-indexes/



  1. Varför välja toppklausul kan leda till långa tidskostnader

  2. Inbyggd fråga för Infoga med Hibernate fungerar inte för java.util.Date

  3. kedja går tillbaka till måltabellen

  4. Hur lagrar jag wxImage i databasen med C++?