我想知道有什么差别BigInt,MediumInt和Int是...这似乎很明显,他们将允许更大的数字; 但是,我可以制作一个Int(20)或一个BigInt(20),这似乎不一定是大小.
一些见解会很棒,只是有点好奇.我一直在使用MySQL并尝试在选择类型时应用业务需求,但我从未理解这方面.
我是网络编程的新手,并且可以在网上找到不同的教程.
我做了我的研究,发现在int(11)中,11是整数的最大显示宽度,如果除非整数是UNSIGNED(在这种情况下是10),它是默认值.
当我看到这样的事情时:
id INT(11) not null AUTO_INCREMENT
Run Code Online (Sandbox Code Playgroud)
我没有问题.但为什么我在不同的教程中看到不同的东西?对于考试,有些人说,
id INT(10) not null AUTO_INCREMENT
Run Code Online (Sandbox Code Playgroud)
乃至
id INT(4) not null AUTO_INCREMENT
Run Code Online (Sandbox Code Playgroud)
试图实现这些目标的作者是什么?似乎没有人愿意解释10或4的含义.
好吧,他们显然减少了显示宽度,但为什么呢?默认宽度为11有什么问题?他们为什么要改变它?或者还有其他我不知道的原因吗?
谢谢.
我想知道为什么我的sql数据类型给出了范围.我定义了一个字段名为"id"的表,数据类型为"int(2)".我将值"id"插入"123456".这是接受并存储的.那么给出范围有什么用呢?
提前致谢.
我正在使用phpMyAdmin来创建我的表结构.
我可以从MySQL的文档页面上读到有关整数类型的大小限制: MySQL整数类型参考
所以这里是我在创建专栏时感到困惑的地方.
我想在表中创建一个列:tbl_note_categories调用notescounter
我不认为自己会在tbl_notes任何具体的情况下创造成千上万的音符categoryid.但我相信我会为每个categoryid创建数百个音符.
我正在选择:tinyint,smallint,mediumint.根据上面的文档链接,我猜测smallint是我的最佳选择.
所以这是我的困惑.PhpMyAdmin要求指定Length/Values参数.我要确保这个新列(notescounter)是无符号的,给我高达65536.这是否意味着我需要长度/值为(5)?
我猜长度是字符长度,但我不确定.(与varchar比较)

如果我使用INT(12)vs INT(10)或INT(8),那么就我在代码中使用它实际上会做什么?
(这是前一个问题的分离)我阅读了手册,我想我明白他们在说什么,但我实际上并不知道它将如何应用于我的php/mysql编码.
有人可以提供一个实际上重要的例子吗?
涉及的表格:
phppos_permissions_actions:
mysql> show create table phppos_permissions_actions;
+----------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table |
+----------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| phppos_permissions_actions | CREATE TABLE `phppos_permissions_actions` (
`module_id` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`person_id` int(11) NOT NULL,
`action_id` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`module_id`,`person_id`,`action_id`),
KEY `phppos_permissions_actions_ibfk_2` (`person_id`),
KEY `phppos_permissions_actions_ibfk_3` (`action_id`),
CONSTRAINT `phppos_permissions_actions_ibfk_1` FOREIGN KEY (`module_id`) REFERENCES `phppos_modules` (`module_id`),
CONSTRAINT `phppos_permissions_actions_ibfk_2` FOREIGN KEY (`person_id`) REFERENCES `phppos_employees` (`person_id`),
CONSTRAINT `phppos_permissions_actions_ibfk_3` FOREIGN KEY (`action_id`) REFERENCES `phppos_modules_actions` (`action_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci |
+----------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
Run Code Online (Sandbox Code Playgroud)
phppos_modules
mysql> …Run Code Online (Sandbox Code Playgroud)