仅为自己记录所用~
1.MS Sql Server / Python36 / pycharm / win10 64 位
2.下载Python 包的地址:
https://pypi.org/project
http://www.lfd.uci.edu/~gohlke/pythonlibs
2.1 安装.whl的方法
下载.whl 文件, cmd 到文件存放路劲执行 pip install xxxx.whl
若是安装成功后import 仍然提示找不到Module, 则ctrl+alt+S 打开Python 设置窗口,在Project Interpreter 的设置图标单击 add >add python interpreter > Virtaualenv Environment > Existing environment 添加Python的安装路径xxx\python.exe
参考:https://blog.csdn.net/zs512423001/article/details/81702963
3.1 尝试1:使用pymssql 连接,公司的数据库安装在服务器上,需要通过统一的域账户登陆,有点难实现,最后放弃
3.2 尝试2:通过jaydebeapi 连接
url ='jdbc:sqlserver://servername'
user ='username'
password ='userpassword'
driver ='com.microsoft.sqlserver.jdbc.SQLServerDriver'
jarfile ='jar包存放路径\sqljdbc4.jar' (放在安装目录的lib 下,这样不用每个项目换一个路径)
参考:https://www.jianshu.com/p/b80b15eb0207
4.读写excel 文件
思路:将sql中获取的数据写入excel的sheetB, 然后利用公式替换掉testCase中的可参数化参数。再读取出更新过后的excel文件。
4.1 用xlrd 中的方法更新excel, 执行后发现原本的公式都没有了, 完全不能满足自己的设想。
4.2 换为用openpyxl.load_workbook () 更新,更新后公式仍然存在
4.3 xlrd 读取,有遇到一个奇怪的问题:updateExcel_xlsx 写过的excel,读取到的是公式本身而不是计算后的值。 手动打开excel文件并保存后,则可以正确读到。(换openpyxl 试了也一样)
从网上找到了一个解决方案:https://blog.csdn.net/weixin_44395619/article/details/90632170
用pywin32 模块 打开再关闭文件,之后读取就正确了