MySQL中创建表时AUTO_INCREMENT的用法

日期: 2010-08-02 作者:佚名 来源:TechTarget中国

  CREATE TABLE `app` (
  `app_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
  `app_name` varchar(200) DEFAULT NULL,
  `app_description` text,
  `app_image` varchar(200) DEFAULT NULL,
  `app_online` tinyint(1) DEFAULT ‘1’,
  PRIMARY KEY `app_id` (`app_id`)
  ) ENGINE=MyISAM AUTO_INCREMENT=12 DEFAULT CHARSET=utf8;
  /*Data for the table `app` */
  insert into `app`(app_id,app_name,app_description,app_image,app_online) values (1,’团购’,’团购信息’,’app_1.gif’,1),(3,’test2′,’test2′,’app_ad0234829205b9033196ba818f7a872b_3.JPG’,1),(4,’test2333′,’test3333′,’app_afb9b8cacd8dbfe912d6adc619a0f9fe_4.jpg’,1),(5,’分类信息’,’58同城,赶集网,百姓网dd’,’app_5.gif’,1),(6,’记事本’,’category info why’,’app_6.gif’,0),(7,’音乐’,’category info ++ why’,’app_7.gif’,1),(8,’网盘’,’世界上用户体验最好、速度最快的网络硬盘,试试你就知道。’,’app_8.gif’,0),(9,’图书’,’book’,’app_9.gif’,1);

  在表app的数据中,字段app_id中的最大值为9,而创建表的时候AUTO_INCREMENT=12,则下次通过程序往表app中insert数据,且没有指定字段app_id的值时,下次的app_id将从12开始计算起,而不是10,切记,切记。

  这个功能有什么作用呢?比如有些数据原来是写死的,没有记录到数据库中,后来由于需求变化需要做成动态管理,需要保存到数据库中,而原来有部分app_id已经被使用了,不能用于其它的,此时AUTO_INCREMENT就被派上用场了。

AUTO_INCREMENT用法

  举个例子,比如app_id为10时用于我的网址(但是我的网址不需要保存到数据库中,因为每个用户必须显示此app,且不需要配置),如果创建表时不指定AUTO_INCREMENT=12,则app_id为10的值将用于新创建的app,将会发生岐义,所以一定要注意。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

作者

佚名
佚名

相关推荐