单选按钮的数据类型

时间:2014-08-17 08:28:22

标签: php mysql

我对单选按钮和数据类型有疑问。我正在创建一个表:

   CREATE TABLE `countries`(  
     `name` VARCHAR(25) NOT NULL ,  
     `population` SMALLINT NOT NULL ,  
     `latitude` TINYINT NOT NULL,
     `country_popularity` TINYINT NOT NULL
    );

另外,我有

    <form method="post" action="countryfact.php">

   <li>Q1. At what latitude can this country be found?
   <input type="radio" name="latitude" value="equator">Equator
   <input type="radio" name="latitude" value="capricorn">Capricorn
   <input type="radio" name="latitude" value="cancer">Cancer</li><br/>
   <input type="submit" name="submit" value="Submit">

   </form>

我的问题是:数据类型TINYINT(或SMALLINT或INT)是否可用于具有三个不同值(即摩羯座,癌症和赤道)的单选按钮?

我的第二个问题是滑块:

上面的滑块指的是上面的“country_popularity”字段,为此我使用了数据类型“tinyint”。我是否正确使用tinyint作为滑块确定的值?对于你们中的一些人来说,这可能是一个微不足道的问题,但对于那些没有掌握PHP / SQL的人来说可能并不简单。

2 个答案:

答案 0 :(得分:1)

关于你的第一个问题: TINYINT,SMALLINT或INT允许存储整数。在你的情况下,你会存储字符串(赤道,摩羯座,......)。在这种情况下使用的数据类型是VARCHAR2。

关于你的第二个问题: TINIYINT数据类型允许存储0到255之间的数字。滑块值是否在此范围内,是的,您可以使用此数据类型。

顺便说一句,这是一种避免使用超尺寸数据类型的好方法。

http://msdn.microsoft.com/en-us/library/ms187745.aspx

答案 1 :(得分:0)

我可能会使用enum来存储广播结果。

就滑块而言,如果你的值有浮点,我会选择Float \ Decimal,而不是tinyint - 但它实际上取决于可能值的范围。