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发腾讯微博代码分享
Jan 10 Python
在Python编程过程中用单元测试法调试代码的介绍
Apr 02 Python
浅谈终端直接执行py文件,不需要python命令
Jan 23 Python
python文件特定行插入和替换实例详解
Jul 12 Python
对Python函数设计规范详解
Jul 19 Python
python爬虫模块URL管理器模块用法解析
Feb 03 Python
解决Python pip 自动更新升级失败的问题
Feb 21 Python
在脚本中单独使用django的ORM模型详解
Apr 01 Python
Python3.7在anaconda里面使用IDLE编译器的步骤详解
Apr 29 Python
python怎么提高计算速度
Jun 11 Python
浅析Python的命名空间与作用域
Nov 25 Python
pytorch实现线性回归以及多元回归
Apr 11 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+mysql)
2007/11/23 PHP
使用PHP socke 向指定页面提交数据
2008/07/23 PHP
php dirname(__FILE__) 获取当前文件的绝对路径
2011/06/28 PHP
PHP时间戳 strtotime()使用方法和技巧
2013/10/29 PHP
ThinkPHP在新浪SAE平台的部署实例
2014/10/31 PHP
PHP laravel中的多对多关系实例详解
2017/06/07 PHP
php基于自定义函数记录log日志方法
2017/07/21 PHP
PHP关于foreach复制知识点总结
2019/01/28 PHP
Thinkphp5.0 框架使用模型Model添加、更新、删除数据操作详解
2019/10/11 PHP
javaScript call 函数的用法说明
2010/04/09 Javascript
表格单元格交错着色实现思路及代码
2013/04/01 Javascript
jQuery图片的展开和收缩实现代码
2013/04/16 Javascript
window.returnValue使用方法示例介绍
2014/07/03 Javascript
JQuery $.each遍历JavaScript数组对象实例
2014/09/01 Javascript
nodejs创建web服务器之hello world程序
2015/08/20 NodeJs
vue中遇到的坑之变化检测问题(数组相关)
2017/10/13 Javascript
你点的 ES6一些小技巧,请查收
2018/04/25 Javascript
js实现购物车功能
2018/06/12 Javascript
JavaScript实现封闭区域布尔运算的示例代码
2018/06/25 Javascript
[19:14]DOTA2 HEROS教学视频教你分分钟做大人-维萨吉
2014/06/24 DOTA
[01:12](回顾)DOTA2国际邀请赛,全世界DOTAer的盛宴
2014/07/01 DOTA
[03:14]辉夜杯主赛事 12月25日每日之星
2015/12/26 DOTA
Python sys.path详细介绍
2013/10/17 Python
Python中自定义函数的教程
2015/04/27 Python
详解Python if-elif-else知识点
2018/06/11 Python
解决Python中定时任务线程无法自动退出的问题
2019/02/18 Python
python、Matlab求定积分的实现
2019/11/20 Python
python计算导数并绘图的实例
2020/02/29 Python
python删除某个目录文件夹的方法
2020/05/26 Python
选秀节目策划方案
2014/06/06 职场文书
奥林匹克的口号
2014/06/13 职场文书
2014小学数学教研组工作总结
2014/12/06 职场文书
行政主管岗位职责
2015/02/03 职场文书
有关水浒传的读书笔记
2015/06/25 职场文书
党风廉政建设心得体会
2019/05/21 职场文书
Python matplotlib绘制条形统计图 处理多个实验多组观测值
2022/04/21 Python