用python获取mysql中的表行数

本文介绍如何使用Python连接到MySQL数据库,并查询特定表的行数,适用于数据处理和分析场景。
#导入MySQLdb模块,这个模块需要自己安装,安装文档请见http://blog.itpub.net/29989552/viewspace-1805409/
import MySQLdb

#打开数据库连接
conn=MySQLdb.connect(host='172.30.249.57',port=3306,user='root',passwd='Welcome1>')

#使用cursor()方法获取游标
cursor1=conn.cursor(cursorclass=MySQLdb.cursors.DictCursor)
cursor2=conn.cursor(cursorclass=MySQLdb.cursors.DictCursor)
begin=True
while begin==True:

#输入要查询的哪个数据下的表信息
        schema=raw_input('Please enter database name:') 

#执行sql获取数据库库名
        cursor1.execute("select TABLE_SCHEMA from information_schema.tables group by TABLE_SCHEMA")
        rows=cursor1.fetchall()
        schemalist=[]
        for list in rows:
                schemalist.append(list['TABLE_SCHEMA'])

#判断用户是否输入正确的数据库名
        if schema in schemalist:
#执行sql获取数据库下的表信息
                sql="select TABLE_NAME,TABLE_ROWS from information_schema.TABLES  where TABLE_SCHEMA='%s'" % (schema)
                cursor2.execute(sql)
                result=cursor2.fetchall()
                begin=False
#循环输出
                for list2 in result:
                        print list2['TABLE_NAME']+':'+str(list2['TABLE_ROWS'])
        else:
                begin=True
                print '-database name not exist,please enter again-'
cursor1.close()
cursor2.close()
conn.commit()
conn.close()

效果:
[root@~]# python schema.py

Please enter database name:123      
-database name not exist,please enter again-
Please enter database name:test
fd_saleman_info:1612
fd_wx_user_info:1498
id:1
invite_user_detail:43341
july_active_earn_rank:2000

注意:这里的行数是统计信息里的数据,会和实际去用select count(*)查出来的数据有差异

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29989552/viewspace-2129864/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/29989552/viewspace-2129864/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值