sql的执行一般过程,第一步是构建集合,然后是筛选,然后是分组,之后是分组计算 最后是排序,执行谓词,io 输出 等。
构建集合后 执行 where 或 连接的条件 就是筛选数据,这个就限定了集合。所以你筛选后的条件就决定了你的数据不是全面的。
你可以把条件全部去掉看看!
分组就是把相同的合并成独立的行集,所以这个也减少了数据!
不懂在问!
唔,屏幕那么小,你还想全部显示吗...一次显示一部分也可以的吧,还有就是能导入到文件中去看,都能解决你的问题。
假如你的数据库名:test_db,有300张表。
解决方法一:
USE information_schema
SELECT TABLE_NAME
FROM information_schema.TABLES
WHERE TABLE_SCHEMA='test_db'
ODER BY TABLE_NAME
LIMIT 0,30 #30表示一次查多少,这个可以自己看着改啦
再来一次
SELECT TABLE_NAME
FROM information_schema.TABLES
WHERE TABLE_SCHEMA='test_db'
ODER BY TABLE_NAME
LIMIT 30,30
...
运行个10次,到LIMIT 270,30就把全部表都显示了一遍。
解决方法二:
唔,我觉得方法一不靠谱,还是这个办法给力...
SELECT TABLE_NAME
FROM information_schema.TABLES
WHERE TABLE_SCHEMA='test_db'
INTO OUTFILE 'd:/tmp/test_db_all_tables.xls'
-- 把表名都导进excel里了,方便进行各种查看...
效果图:
① 首先把MySQL的服务停掉 在运行窗口输入:net stop mysql② 把服务器和客户端的字符集改成自己想用的字符集:GB2312或是utf8等……
具体 *** 作为:打开mysql安装目录下的my.ini;
找到default-character-set,将其改为自己想用的字符集:GB2312或是utf8等……,要注意的是这里有两个default-character-set,用ctrl+f定位在文件最前面输入default就会找到,都要改过来;
③ 重启MySQL服务器,在运行窗口输入:net start mysql
④ 最重要的是一点是,到这里我们已经能够解决乱码问题了,可问题是我们依然还会出现乱码问题,这是因为我们现在的表被创建的时候用的是默认的字符集(latin1),所以这时候我们要把表删除,然后重建就可以了
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)