精华内容
下载资源
问答
  • 数据库应用,我们经常要用到唯一... 数据库中设置了自增列,有时候需要清除数据库从新录入数据.最常见的做法就是使用sql语句"delete表明名"或是直接选中数据,然后删除数据.但是再次插入数据的时候,你就会...

    在数据库应用,我们经常要用到唯一编号,以标识记录。在MySQL中可通过数据列的AUTO_INCREMENT属性来自动生成。MySQL支持多种数据表,每种数据表的自增属性都有差异,这里将介绍各种数据表里的数据列自增属性。

         数据库中设置了自增列,有时候需要清除数据库从新录入数据.最常见的做法就是使用sql语句"delete 表明名"或是直接选中数据,然后删除数据.但是再次插入数据的时候,你就会发现自增列会从上次删除数据的最大值的下一个值开始,而不是从1开始的.有没有一种感觉,感觉挺苦恼的.

    现在就交你两种方法,让你删除数据后,再次插入记录的时候,自增列从1开始.

     

    方法一:

         truncate table 你的表名 //这样不但将数据全部删除,而且重新定位自增的字段

     

         truncate命令是会把自增的字段还原为从1开始的,或者你试试把table_a清空,然后取消自增,保存,再加回自增,这也是自增段还原为1 的方法。

     

    方法二:

    deletefrom 你的表名

    dbcc checkident(你的表名,reseed,0) 

    //重新定位自增的字段,让它从1开始

     

         这两个方法看着很简单,但是在你删除数据的时候,自增列再次插入的时候,发现数据不是从1开始的时候,你想过解决这个问题了吗?没有做不到的,只有想不到的.这些自增问题其实在设计数据库的初期时,开发人员就想到了.只是我们没有想到如何用而已.

    展开全文
  • MySql自增主键ID重置这个坑货

    千次阅读 2020-08-03 09:37:48
    这两天在面试的时候被问到一个问题:在mysql中用自增列作为主键时,先往表里插入5条数据,此时表里数据id为1、2、3、4、5,如果此时删除id=4、5的数据后,再重启数据库,重启成功向表里insert数据的时候,INNODB、...

    这两天在面试的时候被问到一个问题:在mysql中用自增列作为主键时,先往表里插入5条数据,此时表里数据id为1、2、3、4、5,如果此时删除id=4、5的数据后,再重启数据库,重启成功后向表里insert数据的时候,INNODB、MyISAM引擎下ID分别是从几开始增加?当时被问到这个问题时,一脸懵逼,MD谁有事没事去重启线上数据库嘛。最后还是基础知识不牢固,在此作个笔记。

    MySQL通常使用的引擎都是INNODB,在建表时,一般使用自增列作为表的主键,这样的表对提高性能有一定的帮助。但是自增列有一个坑,并且这个坑存在了很久,一直到MySQL 8.0版本,才修复了这个坑,这个坑就是表的自增列变量auto_increment在MySQL重启后,有可能丢失。

    • innodb引擎(低版本):Innodb表中把自增列作为主键ID时,自增列是通过auto-increment计数器实现的,计数器的最大值是记录到内存中的,重启数据库后,会导致auto-increment计数器重置,从而会导致主键ID重置。

    • MyISam引擎:MyISAM表会把自增列(auto-increment计数器)最大值是记录到数据文件里,重启MySQL自增列(计数器)最大值不会丢失,从而使用自增列作为主键ID时也不会丢失。

    1.innodb主键重置问题

    在 MySQL低版本中,InnoDB表中使用自增的 auto-increment计数器 会把值存放在内存中,不会写入磁盘。一旦MySQL 服务重启,这个值就丢了,InnoDB 引擎会根据表中现有的数据重新计算该计数器的值:获取表中最大的自增主键ID作为auto-increment计数器的最大计数,当insert数据时,在auto-increment计数器最大值上1。

    先创建一张user表,新增几条数据:

    //1.创建user表:自增列作为主键ID
    CREATE TABLE `user` (
      `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
      `name` varchar(255) NOT NULL DEFAULT '',
      `age` int(4) unsigned NOT NULL DEFAULT '0',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
    
    //2.插入5条数据
    INSERT INTO `user`(`name`, age) VALUES('刘备1', 21);
    INSERT INTO `user`(`name`, age) VALUES('刘备2', 22);
    INSERT INTO `user`(`name`, age) VALUES('刘备3', 23);
    INSERT INTO `user`(`name`, age) VALUES('刘备4', 24);
    INSERT INTO `user`(`name`, age) VALUES('刘备5', 25);

    (1)场景一

    mysql数据库不重启时,innodb自增主键ID会根据auto-increment计数器一直递增。

    向user表里插入5条数据,主键ID按自增列通过auto-increment计数器实现自增。

    在user表里删除id为4、5的数据,再向user表中插入一条数据,主键ID是auto-increment的值6。

    (2)场景二

    mysql数据库重启后,innodb自增主键ID会根据auto-increment计数器的重置而重置。

    在场景一的基础上,在删除id为6、3的数据后,此时auto-increment计数器的值为7,user表里的id最大是2。

    然后重启数据库后,auto-increment计数器的值变为3,也就是user表里的自增列ID的最大值2加1。

    此时在插入数据时,自增ID会从3开始自增。Innodb表中把自增列作为主键ID时,在mysql重启后就会存在ID重置问题。删除数据后,再重启,AUTO_INCREMENT会查询表里最大ID并进行重置,重置后和重启前AUTO_INCREMENT计数器的值不同。在MyISAM引擎表中的自增列不会存在这个问题。

    2.MySQL 8.0 auto-increment 计数器逻辑

    在 MySQL 8.0 中,这个计数器的逻辑变了:每当计数器的值有变,InnoDB 会将其写入 redo log,保存到引擎专用的系统表中。MySQL 正常关闭后重启:从系统表中获取计数器的值。MySQL 故障后重启:从系统表中获取计数器的值;从最后一个检查点开始扫描 redo log 中记录的计数器值;取这两者的最大值作为新值。

    3.总结

    (1)如果mysql重启了,那么innodb表在启动后,AUTO_INCREMENT值会自动检测出、并重置为当前表中自增列的最大值+1。

    (2)假如一个表里AUTO_INCREMENT计数器的值是10,此时执行update table set id = 15 where id = 9后,如果这时再继续插入数据,到了自增ID=15的时候是会报错。但是这个时候继续插入,就不会报错。因为刚才即使报错了,AUTO_INCREMENT的值依旧会增加。

    (3)现在使用的一般都是innodb引擎,如果将myisam引擎转换过来的时候,一定要小心这个引擎在自增id上的不同表现。在主从使用不同引擎的时候,也会出现问题,最好将引擎改完一致性的。

    参考:《Be Careful With MySQL's auto_increment. How We Ended Up Losing Data

     

                                                                                           2020年08月03号 早 于 北京记

    展开全文
  • 这两天在面试的时候被问到一个问题:在mysql中用自增列作为主键时,先往表里插入5条数据,此时表里数据id为1、2、3、4、5,如果此时删除id=4、5的数据后,再重启数据库,重启成功向表里insert数据的时候,INNODB、...

    这两天在面试的时候被问到一个问题:在mysql中用自增列作为主键时,先往表里插入5条数据,此时表里数据id为1、2、3、4、5,如果此时删除id=4、5的数据后,再重启数据库,重启成功后向表里insert数据的时候,INNODB、MyISAM引擎下ID分别是从几开始增加?当时被问到这个问题时,一脸懵逼,MD谁有事没事去重启线上数据库嘛。最后还是基础知识不牢固,在此作个笔记。

    MySQL通常使用的引擎都是INNODB,在建表时,一般使用自增列作为表的主键,这样的表对提高性能有一定的帮助。但是自增列有一个坑,并且这个坑存在了很久,一直到MySQL 8.0版本,才修复了这个坑,这个坑就是表的自增列变量auto_increment在MySQL重启后,有可能丢失。

    innodb引擎(低版本):Innodb表中把自增列作为主键ID时,自增列是通过auto-increment计数器实现的,计数器的最大值是记录到内存中的,重启数据库后,会导致auto-increment计数器重置,从而会导致主键ID重置。

    MyISam引擎:MyISAM表会把自增列(auto-increment计数器)最大值是记录到数据文件里,重启MySQL自增列(计数器)最大值不会丢失,从而使用自增列作为主键ID时也不会丢失。

    1.innodb主键重置问题

    在 MySQL低版本中,InnoDB表中使用自增的 auto-increment计数器 会把值存放在内存中,不会写入磁盘。一旦MySQL 服务重启,这个值就丢了,InnoDB 引擎会根据表中现有的数据重新计算该计数器的值:获取表中最大的自增主键ID作为auto-increment计数器的最大计数,当insert数据时,在auto-increment计数器最大值上1。

    先创建一张user表,新增几条数据:

    //1.创建user表:自增列作为主键ID

    CREATE TABLE `user` (

    `id` int(11) unsigned NOT NULL AUTO_INCREMENT,

    `name` varchar(255) NOT NULL DEFAULT '',

    `age` int(4) unsigned NOT NULL DEFAULT '0',

    PRIMARY KEY (`id`)

    ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

    //2.插入5条数据

    INSERT INTO `user`(`name`, age) VALUES('刘备1', 21);

    INSERT INTO `user`(`name`, age) VALUES('刘备2', 22);

    INSERT INTO `user`(`name`, age) VALUES('刘备3', 23);

    INSERT INTO `user`(`name`, age) VALUES('刘备4', 24);

    INSERT INTO `user`(`name`, age) VALUES('刘备5', 25);

    (1)场景一

    mysql数据库不重启时,innodb自增主键ID会根据auto-increment计数器一直递增。

    向user表里插入5条数据,主键ID按自增列通过auto-increment计数器实现自增。

    6a1dff629d6f707055354485e9f58546.png

    在user表里删除id为4、5的数据,再向user表中插入一条数据,主键ID是auto-increment的值6。

    26366de6bc3d667cdeb1fd8387327788.png

    (2)场景二

    mysql数据库重启后,innodb自增主键ID会根据auto-increment计数器的重置而重置。

    在场景一的基础上,在删除id为6、3的数据后,此时auto-increment计数器的值为7,user表里的id最大是2。

    214038b69460c00ce5f0434903b88bde.png

    然后重启数据库后,auto-increment计数器的值变为3,也就是user表里的自增列ID的最大值2加1。

    d200b6b3f5d0c224e63904b38a4b0f1c.png

    此时在插入数据时,自增ID会从3开始自增。Innodb表中把自增列作为主键ID时,在mysql重启后就会存在ID重置问题。删除数据后,再重启,AUTO_INCREMENT会查询表里最大ID并进行重置,重置后和重启前AUTO_INCREMENT计数器的值不同。在MyISAM引擎表中的自增列不会存在这个问题。

    bee2dce68c405332214b82cdcb218d66.png

    2.MySQL 8.0 auto-increment 计数器逻辑

    在 MySQL 8.0 中,这个计数器的逻辑变了:每当计数器的值有变,InnoDB 会将其写入 redo log,保存到引擎专用的系统表中。MySQL 正常关闭后重启:从系统表中获取计数器的值。MySQL 故障后重启:从系统表中获取计数器的值;从最后一个检查点开始扫描 redo log 中记录的计数器值;取这两者的最大值作为新值。

    3.总结

    (1)如果mysql重启了,那么innodb表在启动后,AUTO_INCREMENT值会自动检测出、并重置为当前表中自增列的最大值+1。

    (2)假如一个表里AUTO_INCREMENT计数器的值是10,此时执行update table set id = 15 where id = 9后,如果这时再继续插入数据,到了自增ID=15的时候是会报错。但是这个时候继续插入,就不会报错。因为刚才即使报错了,AUTO_INCREMENT的值依旧会增加。

    (3)现在使用的一般都是innodb引擎,如果将myisam引擎转换过来的时候,一定要小心这个引擎在自增id上的不同表现。在主从使用不同引擎的时候,也会出现问题,最好将引擎改完一致性的。

    2020年08月03号 早 于 北京记

    展开全文
  • 单一列:多列组合主键:4、自增自增,如果为某列设置自增列,插入数据时无需设置此列,默认将自增(表中只能有一个自增列)5、复制表只复制表结构和表中数据只复制表结构二、删除删除表(drop的表自增字段不清空,继....

    浏览目录

    创建(复制)

    删除

    修改

    查询

    存储引擎介绍

    一、创建(复制)

    1、语法:

    2、创建示例

    3、主键

    一种特殊的唯一索引,不允许有空值,如果主键使用单个列,则它的值必须唯一,如果是多列,则其组合必须唯一。

    单一列:

    多列组合主键:

    4、自增

    自增,如果为某列设置自增列,插入数据时无需设置此列,默认将自增(表中只能有一个自增列)

    5、复制表

    只复制表结构和表中数据

    只复制表结构

    二、删除

    删除表(drop后的表自增字段不清空,继续计数)

    清空表(truncate后的表自增字段清空,重新开始计数)

    三、修改

    1、添加表字段

    例如:

    ps: after name 表示在name字段后添加字段 age.

    2、修改表字段

    ps:二者区别:

    change 可以改变字段名字和属性

    modify只能改变字段的属性

    3、删除表字段

    4、更新表名称

    5、添加主键

    6、移除主键

    ps:如果主键为自增长,以上方式则不被允许执行,请先去掉主键自增长属性,然后再移除主键

    7、添加外键

    8、移除外键

    ps:如果外键设置后想修改,那么只能是先删除,再添加

    9、修改默认值

    10、删除默认值

    四、查询

    1、查询表数据

    例如:

    或者:

    2、查看表结构

    例:

    3、查看创建表信息

    五、存储引擎介绍

    介绍

    存储引擎 : 其实就是指定 表 如何存储数据,如何为存储的数据 建立索引以及 如何更新,查询数据等技术实现的方法。因为在关系数据库中数据的存储是以表的形式存储的,所以存储引擎也可以称为表类型(即存储和操作此表的类型)

    了解:在Oracle 和SQL Server等数据库中只有一种存储引擎,所有数据存储管理机制都是一样的。而MySql数据库提供了多种存储引擎。用户可以根据不同的需求为数据表选择不同的存储引擎,用户也可以根据自己的需要编写自己的存储引擎

    下表显示了各种存储引擎的特性:

    特性

    MyISAM

    InnoDB

    Memory

    Archive

    NDB

    存储限制

    没有

    64TB

    m没有

    没有

    事务

    支持

    支持

    锁粒度

    b表

    B树索引

    支持

    支持

    支持

    支持

    哈希索引

    支持

    z支持

    全文索引

    支持

    集群索引

    支持

    数据缓存

    支持

    支持

    索引缓存

    支持

    支持

    支持

    数据压缩

    支持

    支持

    批量插入

    相对低

    非常高

    内存消耗

    d低

    外键支持

    支持

    复制支持

    支持

    支持

    支持

    支持

    支持

    查询缓存

    支持

    支持

    支持

    支持

    支持

    备份恢复

    支持

    支持

    支持

    支持

    支持

    集群支持

    支持

    其中最常见的两种存储引擎是MyISAM 和 InnoDB

    MyISAM存储引擎

    1、MyISAM 是MySQL (mysql 5.5版本以前) 原来的默认存储引擎.

    2、MyISAM   这种存储引擎不支持事务,不支持行级锁,只支持并发插入的表锁。

    3、MyISAM   类型的表支持三种不同的存储结构:静态型、动态型、压缩型。

    (1)静态型:就是定义的表列的大小是固定(即不含有:xblob、xtext、varchar等长度可变的数据类型),这样mysql就会自动使用静态myisam格式。

    使用静态格式的表的性能比较高,因为在维护和访问的时候以预定格式存储数据时需要的开销很低。但是这高性能是用空间换来的,因为在定义的时候是固定的,所以不管列中的值有多大,都会以最大值为准,占据了整个空间。

    (2)动态型:如果列(即使只有一列)定义为动态的(xblob, xtext, varchar等数据类型),这时myisam就自动使用动态型,虽然动态型的表占用了比静态型表较少的空间,但带来了性能的降低.

    (3)压缩型:如果在这个数据库中创建的是在整个生命周期内只读的表,则这种情况就是用myisam的压缩型表来减少空间的占用。

    压缩方式参考官方文档: https://dev.mysql.com/doc/refman/5.6/en/myisampack.html

    4、MyISAM也是使用B+tree索引但是和Innodb的在具体实现上有些不同。

    InnoDB存储引擎

    (1)MySQL默认存储引擎(MySQL 5.5 版本后).

    (2)innodb 支持事务,回滚以及系统崩溃修复能力和多版本迸发控制的事务的安全。

    (3)innodb 支持自增长列(auto_increment),自增长列的值不能为空,(一个表只允许存在一个自增,并且要求自增列必须为索引)

    (4)innodb 支持外键(foreign key) ,外键所在的表称为子表,而所依赖的表称为父表。

    (5)innodb存储引擎支持行级锁。

    (6)innodb存储引擎索引使用的是B+Tree

    补充3点:

    1.大容量的数据集时趋向于选择Innodb。因为它支持事务处理和故障的恢复。Innodb可以利用数据日志来进行数据的恢复。主键的查询在Innodb也是比较快的。

    2.大批量的插入语句时(这里是INSERT语句)在MyIASM引擎中执行的比较的快,但是UPDATE语句在Innodb下执行的会比较的快,尤其是在并发量大的时候。

    3.两种引擎所使用的索引数据结构是什么?

    答案:都是B+树!

    MyIASM引擎,B+树的数据结构中存储的内容实际上是实际数据的地址值。也就是说它的索引和实际数据是分开的,只不过使用索引指向了实际数据。这种索引的模式被称为非聚集索引。

    Innodb引擎的索引的数据结构也是B+树,只不过数据结构中存储的都是实际的数据,这种索引有被称为聚集索引。

    Memory存储引擎

    Memory存储引擎(之前称为Heap)将表中数据存放在内存中,如果数据库重启或崩溃,数据丢失,因此它非常适合存储临时数据。

    Archive存储引擎

    正如其名称所示,Archive非常适合存储归档数据,如日志信息。它只支持INSERT和SELECT操作,其设计的主要目的是提供高速的插入和压缩功能。

    NDB存储引擎

    NDB存储引擎是一个集群存储引擎,类似于Oracle的RAC,但它是Share Nothing(非共享)的架构,因此能提供更高级别的高可用性和可扩展性。NDB的特点是数据全部放在内存中,因此通过主键查找非常快。

    关于NDB,有一个问题需要注意,它的连接(join)操作是在MySQL数据库层完成,不是在存储引擎层完成,这意味着,复杂的join操作需要巨大的网络开销,查询速度会很慢。

    测试存储引擎

    创建三个表,分别使用innodb,myisam,memory 存储引擎,进行插入数据测试

    重点(面试题)

    innodb与MyIASM存储引擎的区别:

    1.innodb 是mysql5.5版本以后的默认存储引擎, 而MyISAM是5.5版本以前的默认存储引擎.

    2.innodb 支持事务,而MyISAM不支持事务

    3.innodb 支持行级锁.而MyIASM 它支持的是并发的表级锁.

    4.innodb 支持外键, 而MyIASM 不支持外键

    5.innodb与MyIASM存储引擎都采用B+TREE存储数据, 但是innodb的索引与数据存储在一个文件中,这种方式我们称之为聚合索引.

    而MyIASM则会单独创建一个索引文件,也就是说,数据与索引是分离开的

    6.在效率方面MyISAM比innodb高,但是在性能方面innodb要好一点.

    展开全文
  • 数据库 笔记

    2021-04-15 02:30:41
    查看数据库2.2、数据库类型char与varchar的区别2.3、数据库的字段属性Unsignedzerofill自增非空 NULL ,not null默认2.4、新建数据库表(重点)2.5、数据表的类型2.6、修改删除表3. Mysql数据管理3.1、外键...
  • SQL Server数据库原有ID字段,是自增列的,后来把数据删除后,ID是接着以前的继续增长的,想让ID自增列重新从1开始 dbcccheckident('tablename',reseed,0) --查看当前链接情况: select * from sys.servers; -...
  • MySQL迁移DM8数据库注意事项 数据库安装时需要注意: 数据库安装的常用工具: ... 历史数据中存在主表数据删除而关联表数据删除的,添加自增数据时有可能会数据错误,如: student表 ...
  • 但是与别的数据库不同,SQlite在为表创建自增列后,会将表自增列的当前序号保存到一个名为sqlite_sequenc的表内, 因此清除表的所有记录后,如果还要将自增列清零,则需处理此表相关记录。sqlite_sequence表结构...
  • 自增列使用 自增列定义 属性 第章视图 视图的作用 视图的定义 视图的删除 视图的查询 视图数据的更新 第章嵌入式 前缀和终结符 宿主变量 输入和输出变量 指示符变量 服务器登录与退出 登录服务器...
  • 当主表的记录被从表参照时,主表的记录将不允许删除,如果要删除数据,需要先删除从表中依赖该记录的数据, 然后才可以删除主表的数据。还有一种就是级联删除子表数据。 注意:外键约束的参照,在主表中引用的只能...
  • 一、约束:作用是保证数据的完整性和一致性 not null 表示该字段数据不能为空 default 表示该字段的默认值 unique 唯一(唯一,组合唯一) primary key 主键 一张列表中只允许出现一个主键(not null + unique) ...
  • --添加一个自增列 add column_b int identity(1,1) delete from tablename where column_b not in( select max(column_b) from tablename group by column1,column2,...) alter table tablename drop column column...
  • 使用SQL语句重置自动编号起始值

    千次阅读 2007-05-02 16:16:00
    SQL数据库中当将某列设为种子,便具有和ACCESS数据库中自动编号的功能。要想重置自动编号起始值,可以...删除数据后,设置自增列的起始值DBCC CHECKIDENT (TableName, RESEED, 0)TableName是表的名字。初始值为0 
  • db2-技术经验总结

    2017-10-11 14:30:41
    目录 1. DB2 1.1. 创建一个返回结果集的存储过程\自定义函数 12 1.2. DB2 高级应用 14 1.3. 删除数据时候出现日志已满的解决方法 24 ...1.81. 关于标识列(自增列)的对比试验、使用示例 113 示例 121
  • 小毛病,大问题

    2005-11-24 11:19:00
    其实这是我在设计的时候懒惰造成的,产品使用的是SQLServer数据库,数据库的字段ID是标识,是自增的,当时没有考虑ID变大的情况,所以就任由着字段编号无限的变大,也没有注意,当用户抱怨的时候,也没太当回事,因为程序...
  • java+mysql代码

    2018-05-13 18:56:55
    sid int(4) 学生编号,主键,自增列 stuName varchar(10) 学生名称,非空 age int(4) 年龄,非空 sex int(1) 学生性别,非空 课程表:course 字段名 数据类型 说明 cid int(4) 课程编号,主键 cName varchar (50) ...
  • 实例033 使用while与自增运算符循环遍历数组 实例034 使用for循环输出杨辉三角 实例035 使用嵌套循环在控制台上输出九九乘法表 实例036 用while循环计算1+1/2!+1/3!…1/20! 实例037 for循环输出空心的菱形 实例...
  • 实例033 使用while与自增运算符循环遍历数组 实例034 使用for循环输出杨辉三角 实例035 使用嵌套循环在控制台上输出九九乘法表 实例036 用while循环计算1+1/2!+1/3!…1/20! 实例037 for循环输出空心的菱形 实例...
  • 实例033 使用while与自增运算符循环遍历数组 实例034 使用for循环输出杨辉三角 实例035 使用嵌套循环在控制台上输出九九乘法表 实例036 用while循环计算1+1/2!+1/3!…1/20! 实例037 for循环输出空心的菱形 实例...
  • 实例033 使用while与自增运算符循环遍历数组 实例034 使用for循环输出杨辉三角 实例035 使用嵌套循环在控制台上输出九九乘法表 实例036 用while循环计算1+1/2!+1/3!…1/20! 实例037 for循环输出空心的菱形 实例...
  • 实例033 使用while与自增运算符循环遍历数组 实例034 使用for循环输出杨辉三角 实例035 使用嵌套循环在控制台上输出九九乘法表 实例036 用while循环计算1+1/2!+1/3!…1/20! 实例037 for循环输出空心的菱形 实例...
  • 实例033 使用while与自增运算符循环遍历 数组 43 实例034 使用for循环输出杨辉三角 43 实例035 使用嵌套循环在控制台上输出 九九乘法表 44 实例036 用while循环计算1+1/2!+1/3!…1/20! 45 实例037 for循环输出空心的...
  • 实例033 使用while与自增运算符循环遍历 数组 43 实例034 使用for循环输出杨辉三角 43 实例035 使用嵌套循环在控制台上输出 九九乘法表 44 实例036 用while循环计算1+1/2!+1/3!…1/20! 45 实例037 for循环输出空心的...
  • 实例033 使用while与自增运算符循环遍历 数组 43 实例034 使用for循环输出杨辉三角 43 实例035 使用嵌套循环在控制台上输出 九九乘法表 44 实例036 用while循环计算1+1/2!+1/3!…1/20! 45 实例037 for循环输出空心的...
  • 实例033 使用while与自增运算符循环遍历 数组 43 实例034 使用for循环输出杨辉三角 43 实例035 使用嵌套循环在控制台上输出 九九乘法表 44 实例036 用while循环计算1+1/2!+1/3!…1/20! 45 实例037 for循环输出空心的...

空空如也

空空如也

1 2 3
收藏数 52
精华内容 20
关键字:

数据库使用自增列后删除数据