python3.3~mysql数据库操作

news/2024/7/5 23:32:18

python操作数据库,需要先安装pymysql包,安装方法,见文章:http://blog.csdn.net/lh1963/article/details/52585745


接下来一步一步说明如何操作数据库。

1.引入pymysql

import pymysql


2.建立数据库链接:conn = pymysql.connect(host='255.255.255.255', port=3306, user='user', passwd='123456', db='database', charset='utf8')

其中,host是数据库所在机器的ip,port数据库端口号,user是数据库用户名,passwd是数据库密码,db是数据库名称,charset是数据库的编码


3.获取数据库的游标:cur = conn.cursor()

mysql本身不支持游标(cursor),但是pymysql对Cursor进行了仿真,python通过该游标,对数据库进行命令操作。


4.执行mysql命令:cur.execute(sqlCmd)


5.关闭游标:cur.close()


6.提交操作:conn.commit()


7.关闭数据库链接:conn.close()


其中第3,4,5步是执行一条命令,可在打开数据库链接到提交操作之间,循环调用3,4,5步骤,就可执行多条命令


举例:

import pymysql
import sys

#功能:    更新数据库

argc = len(sys.argv)
if argc < 2:
    print('功能:    更新数据库')
    print('使用方法:update.py后面直接跟id,多个id之间用空格隔开。\n举例:\n  update.py 1 2');
    print()
else:
    try:
        conn = pymysql.connect(host='255.255.255.255', port=3306, user='user', passwd='123456', db='database', charset='utf8')
        print('数据库链接成功!!!')
        print()
        print('开始更新任务状态...')
        for i in range(1,argc):
            print("任务%d = %s" %(i, sys.argv[i]))
            t_ctrtask_sql = "update database.test set status = %d where id = '%s'"
            cur = conn.cursor()
            cur.execute(t_ctrtask_sql % (0, sys.argv[i]))
            cur.close()
            print("任务%d = %s更新成功!!!" %(i, sys.argv[i]))
            print()
        conn.commit()
        conn.close()
    except Exception as e:
    	print(e)
    finally:
    	print('执行结束,数据库链接关闭!!!')





http://www.niftyadmin.cn/n/3659866.html

相关文章

《给初学者的Windows Vista的补遗手册》之092

4.8. 回收站回收站就是你的桌面的废物筐。当有些文件失效之后&#xff0c;就应该把它们置于这里。简单说来&#xff0c;回收站是数据的中继站&#xff0c;直到你清空回收站或者将指从回收站恢复&#xff0c;这些文件或文件夹都一直呆在那里。尽管你可以直接拖动图标到回收站图标…

常用工具~teamviewer~请检查您的互联网连接 一般情况下您会使用代理

平时都在用的一个绿色版的teamviewer&#xff0c;都挺好使&#xff0c;但是今天打开的时候&#xff0c;却出问题了&#xff0c;提示&#xff1a; 请检查您的互联网连接 一般情况下您会使用代理 后面还有一堆文字bulabula的&#xff0c;迷惑的不行&#xff0c;于是乎&#xff…

c# static变量的初始化

用static声明的变量或函数&#xff0c;都是属于类的&#xff0c;而不属于类对象&#xff0c;所以最好不要在类的构造函数中为static变量初始化&#xff08;不需要初始化的就不用顾忌了&#xff0c;因为c#默认会给static变量初化得&#xff0c;比如staitc整型变量&#xff0c;会…

c# datagirdview操作的简单介绍

今天写了个小工具&#xff0c;用到了datagirdview&#xff0c;还挺好使&#xff0c;现将操作记下来&#xff0c;方便以后查找&#xff08;我这脑子不记东西&#xff0c;没办法&#xff09;。 首先添加datagirdview控件&#xff0c;修改控件名称为dgv。 1. 动态加datagridview…

《给初学者的Windows Vista的补遗手册》之093

4.8.1. 还原删除的文件、文件夹如果你改变了把文件删除到这个“软件墓地”的主意&#xff0c;只需双击打开回收站。如图4-10所示的窗口会打开。图4-10。当你双击回收站&#xff08;上图&#xff09;时&#xff0c;窗口&#xff08;下图&#xff09;会显示其中每个文件、文件夹的…

c++~socket编程

刚开始学习socket&#xff0c;就在网上随便找了一段代码&#xff1a; #include <winsock.h>int main(void) {WSADATA wsa;/*初始化socket资源*/if (WSAStartup(MAKEWORD(1,1),&wsa) ! 0){return -1; //代表失败}return 0; } 写好后&#xff0c;编译&#xff0c;竟…

《给初学者的Windows Vista的补遗手册》之094

4.8.2. 清空回收站虽然回收站的存在有其好处&#xff08;你可以随时撤消你的错误&#xff09;&#xff0c;但也有个不足——这些文件还是会占据一样多的磁盘空间。除非你清空回收站&#xff0c;删除文件本身并不会为你带来额外的磁盘空间。这就是大多数人会或迟或早地像下面这样…

c++ ~ std::wstring 转LPWSTR

wchar wBuffer[256] {0}; std::wstring wStr _T("Im wstring"); wmemcpy_s(wBuffer, 256, wStr.c_str(), wStr.size()); LPWSTR lpw wBuffer;