一、如何进入sqlite3交互模式进行命令 *** 作?
1、确认sqlite3是否已经安装
进去python命令行,执行
>>>importsqlite3>>>
没有报错,说明sqlite3已经成功安装了
2、如何进入sqlite3命令行
sqlite3/path/to/dbname
直接执行sqlite3 加数据库名即可
~sqlite3~/Downloads/django_test/cmdb/db.sqlite3sqlite3sqliteversion3.14.02016-07-2615:17:14Enter".help"forusagehints.sqlite>
3、.tables :查看所有表
sqlite>.tablesauth_groupdjango_content_typeauth_group_permissionsdjango_migrationsauth_permissiondjango_sessionauth_userucloud_projectauth_user_groupsucloud_regionauth_user_user_permissionsucloud_uhostdjango_admin_logucloud_zone
4、查询表中总的数据条目数
selectcount()fromtablename;
例如:
sqlite>selectcount()fromucloud_zone;11sqlite>selectcount()fromucloud_uhost;147sqlite>selectcount()fromucloud_project;10
5、执行多条查询语句
sqlite>select...>(selectcount(1)fromucloud_uhost)asuhost,...>(selectcount(1)fromucloud_project)asproject,...>(selectcount(1)fromucloud_region)asregion...>;147|10|8
您可以使用下列的点命令来格式化输出为本教程下面所列出的格式:
sqlite>.headeronsqlite>.modecolumnsqlite>.timeronsqlite>
更多命令查看:
http://www.runoob.com/sqlite/sqlite-commands.html
二、python如何执行sqlite查询命令
python执行sqlite命令的流程:
1、cx=sqlite3.connect("db.sqlite3)
创建或打开数据库文件,如果数据库文件不存在,则创建,存在,则打开该文件。cx为数据库连接对象,它可以有以下 *** 作: commit()--事务提交 rollback()--事务回滚 close()--关闭一个数据库连接 cursor()--创建一个游标
2、cursor=cx.cursor()
定义了一个游标。游标对象有以下的 *** 作: execute()--执行SQL语句 executemany--执行多条SQL语句 close()--关闭游标 fetchone()--从结果中取一条记录 fetchmany()--从结果中取多条记录 fetchall()--从结果中取出多条记录 scroll()--游标滚动 关于对象的方法可以去 Python 主页上查看DB API的详细文档
3、cursor.execute("""...select...(selectcount(1)fromucloud_uhost)asuhost...""")
cursor.execute(SQL语句)是执行SQL语句
4、cursor.close()
关闭游标
下面是 *** 作数据库的过程
>>>importsqlite3>>>fromdjango.dbimportconnectionscx=sqlite3.connect("/Users/cengchengpeng/Downloads/django_test/cmdb/db.sqlite3")cursor=cx.cursor()>>>cursor<sqlite3.Cursorobjectat0x10b24cb20>>>>cursor.execute("""...select...(selectcount(1)fromucloud_uhost)asuhost,...(selectcount(1)fromucloud_project)asproject,...(selectcount(1)fromucloud_zone)aszone...""")<sqlite3.Cursorobjectat0x10b24cb20>>>>cursor.description(('uhost',None,None),('project',('zone',None))>>>columns=[_[0].lower()for_incursor.description]>>>columns['uhost','project','zone']>>>for_incursor:...print_...(147,10,11)>>>results=[dict(zip(columns,_))for_incursor]>>>results>>>results[{'project':10,'zone':11,'uhost':147}]>>>cursor.close()
写python脚本,来执行sqlite语句
#Coding:utf-8fromdjango.dbimportconnectionsdefopen_sql_dict(sql,connection_name='default'):dbs=connections[connection_name]cursor=dbs.cursor()cursor.execute(sql)columns=[_[0].lower()for_incursor.description]results=[dict(zip(columns,_))for_incursor]cursor.close()returnresults
这里脚本里面,用到了zip()方法和dict()方法
总结以上是内存溢出为你收集整理的sqlite3常用命令以及django如何 *** 作sqlite3数据库全部内容,希望文章能够帮你解决sqlite3常用命令以及django如何 *** 作sqlite3数据库所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)