Python SQL查询并生成json文件操作示例


Posted in Python onAugust 17, 2018

本文实例讲述了Python SQL查询并生成json文件操作。分享给大家供大家参考,具体如下:

1. 数据准备

SQL数据点击此处本站下载

2. python代码

import datetime 
import os
import mssqlhelper
ms = mssqlhelper.MSSQL(host="192.168.0.108", user="sa", pwd="sa", db="ComPrject")
def getAreas(cityid):
  arealist=ms.ExecQuery("select *From dbo.areas where cityid='%s' " % cityid)
  return arealist
def getCity(provinces):
  citylist=ms.ExecQuery("select *From dbo.cities where provinceid='%s'" % provinces)
  return citylist
def getProvinces():
  provlist=ms.ExecQuery("select *From dbo.provinces")
  return provlist
def createFileJson():
  date=datetime.datetime.now().strftime('%Y-%m-%d')
  path=date+'-provinces.json'
  return path
def writeJson(path):
  provlist=getProvinces()
  with open(path,"w+",encoding="utf-8") as f:
    f.write("[")
    lp = 0
    for p in provlist:
      if lp>0:
        f.write(",\n")
      else:
        f.write("\n")
      f.write("{\n")
      f.write('"Code":"%s"\n'% p[1])
      f.write(',"Name":"%s"\n'% p[2])
      f.write(',Nodes:[\n')
      citylist=getCity(p[1])
      lc = 0
      for c in citylist:
        if lc>0:
          f.write("\t,\n")
        else:
          f.write("\n")
        f.write("\t{\n")
        f.write('\t"Code":"%s"\n'% c[1])
        f.write('\t,"Name":"%s"\n'% c[2])
        f.write('\t,Nodes:[\n')
        arealist = getAreas(c[1])
        la = 0
        for a in arealist:
          if la>0:
            f.write("\t\t,\n")
          else:
            f.write("\n")
          f.write("\t\t{\n")
          f.write('\t\t"Code":"%s"\n'% a[1])
          f.write('\t\t,"Name":"%s"\n'% a[2])
          f.write("\t\t}\n")
          la += 1
        f.write("\t]\n")
        f.write("\t}\n")
        lc += 1
      f.write("]\n")
      f.write("}\n")
      lp += 1
    f.write("]\n")
if __name__ == '__main__':
  path=createFileJson()
  writeJson(path)

3.生成预览

Python SQL查询并生成json文件操作示例

Python 相关文章推荐
Python中使用Beautiful Soup库的超详细教程
Apr 30 Python
Python使用ftplib实现简易FTP客户端的方法
Jun 03 Python
详解Django框架中的视图级缓存
Jul 23 Python
python3使用requests模块爬取页面内容的实战演练
Sep 25 Python
django使用html模板减少代码代码解析
Dec 12 Python
Python 面试中 8 个必考问题
Nov 16 Python
python实现图片压缩代码实例
Aug 12 Python
为什么说Python可以实现所有的算法
Oct 04 Python
Python3 解决读取中文文件txt编码的问题
Dec 20 Python
Python的赋值、深拷贝与浅拷贝的区别详解
Feb 12 Python
python爬虫基础之urllib的使用
Dec 31 Python
Python Django ORM连表正反操作技巧
Jun 13 Python
python3 flask实现文件上传功能
Mar 20 #Python
Python爬取qq空间说说的实例代码
Aug 17 #Python
django进阶之cookie和session的使用示例
Aug 17 #Python
Django 登陆验证码和中间件的实现
Aug 17 #Python
python读取Excel实例详解
Aug 17 #Python
python框架中flask知识点总结
Aug 17 #Python
Flask Web开发入门之文件上传(八)
Aug 17 #Python
You might like
PHP静态类
2006/11/25 PHP
php 中的str_replace 函数总结
2007/04/27 PHP
php XMLWriter类的简单示例代码(RSS输出)
2011/09/30 PHP
yii权限控制的方法(三种方法)
2015/12/28 PHP
php执行多个存储过程的方法【基于thinkPHP】
2016/11/08 PHP
PHP中Laravel 关联查询返回错误id的解决方法
2017/04/01 PHP
redis+php实现微博(一)注册与登录功能详解
2019/09/23 PHP
phpQuery采集网页实现代码实例
2020/04/02 PHP
脚本吧 - 幻宇工作室用到js,超强推荐base.js
2006/12/23 Javascript
javascript 学习之旅 (2)
2009/02/05 Javascript
JavaScript设计模式之策略模式实例
2014/10/10 Javascript
JavaScript学习笔记之数组的增、删、改、查
2016/03/23 Javascript
利用select实现年月日三级联动的日期选择效果【推荐】
2016/12/13 Javascript
Angular.JS实现无限级的联动菜单(使用demo)
2017/02/08 Javascript
使用JS实现图片轮播的实例(前后首尾相接)
2017/09/21 Javascript
mongoose更新对象的两种方法示例比较
2017/12/19 Javascript
jQuery实现定时隐藏对话框的方法分析
2018/02/12 jQuery
在小程序中使用canvas的方法示例
2018/09/17 Javascript
详解vue-cli3 中跨域解决方案
2019/04/10 Javascript
JavaScript对象原型链原理详解
2020/02/05 Javascript
js实现拾色器插件(ColorPicker)
2020/05/21 Javascript
全面解析JavaScript Module模式
2020/07/24 Javascript
[55:26]DOTA2-DPC中国联赛 正赛 Aster vs LBZS BO3 第一场 2月23日
2021/03/11 DOTA
Python中处理unchecked未捕获异常实例
2015/01/17 Python
使用基于Python的Tornado框架的HTTP客户端的教程
2015/04/24 Python
python实现将html表格转换成CSV文件的方法
2015/06/28 Python
python微信跳一跳游戏辅助代码解析
2018/01/29 Python
Python jieba库用法及实例解析
2019/11/04 Python
CSS3 创建网页动画实现弹跳球动效果
2018/10/30 HTML / CSS
瑞典时尚耳机品牌:Urbanears
2017/07/26 全球购物
沪江旗下的海量优质课程平台:沪江网校
2017/11/07 全球购物
个人简历自我鉴定
2013/10/11 职场文书
物流管理专业毕业生求职信
2014/03/23 职场文书
网络研修随笔感言
2015/11/18 职场文书
Mysql Online DDL的使用详解
2021/05/20 MySQL
redis sentinel监控高可用集群实现的配置步骤
2022/04/01 Redis