如果仅是要获取记录(行)数,则建议使用:SELECT TABLE_ROWSFROM information_schema.tables WHERE table_name='the_table_you_want' -- Can end here if only 1 DB AND table_schema = DATABASE(); -- See comment below if > 1 DB(至少对于MySQL)。
以下是查找AUTO_INCREMENT表的下一个值的最有效方法。即使在包含数百万个表的数据库上,这也很快,因为它不需要查询潜在的大型information_schema数据库。mysql> SHOW TABLE STATUS LIKE 'table_name';// Look for the Auto_increment column但是,如果必须在查询中检索此值,则information_schema必须转到数据库。SELECT `AUTO_INCREMENT`FROM INFORMATION_SCHEMA.TABLESWHERE TABLE_SCHEMA = 'DatabaseName'AND TABLE_NAME = 'TableName';