# -*- coding: utf-8 -*-

'''
python coded by

written in 2016/8/31

Used for get win os log for each windows server
'''

'''
pymssql 帮助文档
http://pymssql.org/en/stable/pymssql_examples.html
'''

import pymssql
import MySQLdb
import time

#全局变量
host = "192.168.33.190"
user = "sa"
password = "1111"
dbname = "testdb"
port = 1433

def fetch_row():
try:
#conn = pymssql.connect(host,port,user,password,dbname,charset="UTF-8",timeout=3)
conn = pymssql.connect(server=host,port=port,database=dbname,user=user,password=password,charset="UTF-8",timeout=3)
cursor = conn.cursor()
sql="select schema_id,name from t1"
cursor.execute(sql)
row = cursor.fetchone() #相当于 cursor.next方法
while row:
print("ID=%d, Name=%s" % (row[0], row[1])) #格式化输出

#time.sleep(1) #每次输出等待1秒
row = cursor.fetchone() #输出下一行 cursor.next方法
conn.close()
return 1

except Exception,e:
return e

def change_row():
try:
conn = pymssql.connect(server=host,port=port,database=dbname,user=user,password=password,charset="UTF-8",timeout=3)
cursor = conn.cursor()
#sql="insert into t1 select * from t1"
sql="update t1 set object_id=object_id+1067705889 where name='dm_resource_governor_resource_pool_volumes' "
cursor.execute(sql)
conn.commit()
conn.close()
return 1

except Exception,e:
conn.rollback()
return e

def call_sp_parm():
try:
#conn = pymssql.connect(host,port,user,password,dbname,charset="UTF-8",timeout=3)
conn = pymssql.connect(server=host,port=port,database=dbname,user=user,password=password,charset="UTF-8",timeout=3)
cursor = conn.cursor(as_dict=True)
cursor.callproc('sp_get_dbname', ('testdb',)) #sp名 和 参数
for row in cursor:
print row['name'],row['database_id'] #按列名取数
conn.close()
return 1

except Exception,e:
conn.rollback()
return e

def call_sp_no_parm():
try:
#conn = pymssql.connect(host,port,user,password,dbname,charset="UTF-8",timeout=3)
conn = pymssql.connect(server=host,port=port,database=dbname,user=user,password=password,charset="UTF-8",timeout=3)
cursor = conn.cursor(as_dict=True)
cursor.callproc('sp_get_dbname1',) #sp名 和 参数
for row in cursor:
print row['name'],row['database_id'] #按列名取数

conn.commit()
conn.close()
return 1

except Exception,e:
conn.rollback()
return e

call_sp_no_parm()
call_sp_parm()

fetch_row()

change_row()

python for MSSQLserver的更多相关文章

  1. python 处理中文 读取数据库输出全是问号

    ref:http://www.cnblogs.com/zhoujie/archive/2013/06/07/problem1.html 1.python连接mssql数据库编码问题 python一直对 ...

  2. 如何用 python 优雅地完成数据库课设

    0 前言 偶然间发现 Google 收录了学校实验打卡系统的接口,正好要做数据库课设,便拿来作为 environment. 机房居然装了 python ,早就听说 python 写爬虫速度一流,课上的 ...

  3. Python中的多进程与多线程(一)

    一.背景 最近在Azkaban的测试工作中,需要在测试环境下模拟线上的调度场景进行稳定性测试.故而重操python旧业,通过python编写脚本来构造类似线上的调度场景.在脚本编写过程中,碰到这样一个 ...

  4. Python高手之路【六】python基础之字符串格式化

    Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-3101] This ...

  5. Python 小而美的函数

    python提供了一些有趣且实用的函数,如any all zip,这些函数能够大幅简化我们得代码,可以更优雅的处理可迭代的对象,同时使用的时候也得注意一些情况   any any(iterable) ...

  6. JavaScript之父Brendan Eich,Clojure 创建者Rich Hickey,Python创建者Van Rossum等编程大牛对程序员的职业建议

    软件开发是现时很火的职业.据美国劳动局发布的一项统计数据显示,从2014年至2024年,美国就业市场对开发人员的需求量将增长17%,而这个增长率比起所有职业的平均需求量高出了7%.很多人年轻人会选择编 ...

  7. 可爱的豆子——使用Beans思想让Python代码更易维护

    title: 可爱的豆子--使用Beans思想让Python代码更易维护 toc: false comments: true date: 2016-06-19 21:43:33 tags: [Pyth ...

  8. 使用Python保存屏幕截图(不使用PIL)

    起因 在极客学院讲授<使用Python编写远程控制程序>的课程中,涉及到查看被控制电脑屏幕截图的功能. 如果使用PIL,这个需求只需要三行代码: from PIL import Image ...

  9. Python编码记录

    字节流和字符串 当使用Python定义一个字符串时,实际会存储一个字节串: "abc"--[97][98][99] python2.x默认会把所有的字符串当做ASCII码来对待,但 ...

随机推荐

  1. 双系统win+ubuntu无法访问win的盘符

    1.打开终端:如果没有安装ntfs-3g就要安装: sudo apt-get install ntfs-3g 2.修复挂载错误的相应的分区: sudo ntfsfix /dev/sda(×) (×)取 ...

  2. ZeroMQ接口函数之 :zmq - 0MQ 轻量级消息传输内核

    官方网址:http://api.zeromq.org/4-0:zmq zmq(7) 0MQ Manual - 0MQ/3.2.5 Name zmq – ØMQ 轻量级消息传输内核 Synopsis # ...

  3. 【新手学Python】一、基础篇

    由于以前处理数据用Matlab和C,最近要处理大量文本文件,用C写实在是太繁琐,鉴于Python的强大文本处理能力,以及其在Deep Learning上有着很大优势,本人打算从即日起学习Python, ...

  4. 保护眼睛(ubuntu 和 chrome)

    chrome 安插件https://chrome.google.com/webstore/detail/%E4%BF%9D%E6%8A%A4%E7%9C%BC%E7%9D%9B/fgadnbmmoln ...

  5. Spring中Bean的作用域

    1.在Spring的早期版本中,仅有两个作用域:singleton和prototype,前者表示Bean以单例的方式存在:后者表示每次从容器中调用Bean时,都会返回一个新的实例 2.Spring 2 ...

  6. defer 和 async 本地对象和宿主对象

    <script async></script> 没有defer和async的情况下是"同步执行"的,浏览器解析到这里的时候,会先加载资源完成后立即执行,并阻 ...

  7. 【emWin】例程八:绘制位图

    实验指导书及代码包下载: 链接:http://pan.baidu.com/s/1bpeMYpp 密码:wgtp 实验现象:

  8. 视频直播点播nginx-rtmp开发手册中文版

    2016年8月18日12:42:35 参照官方文档https://github.com/arut/nginx-rtmp-module/wiki/Directives 请注意这个是粗翻译版,仅供参考,不 ...

  9. hive 使用where条件报错 java.lang.NoSuchMethodError: org.apache.hadoop.hive.ql.ppd.ExprWalkerInfo.getConvertedNode

    hadoop 版本 2.6.0 hive版本 1.1.1 错误: java.lang.NoSuchMethodError: org.apache.hadoop.hive.ql.ppd.ExprWalk ...

  10. UE4开发神秘海域类游戏原型 初阶(二):动画资源的整合

    前一篇已经确定神海类游戏原型的目标,首先要做的就是3C's(Character, Controls, Camera)的开发.   UE4的3C's的程序部分开发主要也就是基于他的GamePlay Fr ...