Python連線MySQL及對其操作

2021-06-28 06:11:13 字數 1757 閱讀 5605

**實驗涉及,主要是記個筆記,見諒!下面是測試**(實現資料庫、表建立、插入資料、查詢資料、更新資料):

# -*- coding: cp936 -*-

import mysqldb

try:

conn=mysqldb.connect(host='localhost',user='root',passwd='19900216')

#conn=mysqldb.connect(host='localhost',user='root',passwd='19900216',db='world')

#print "conn=",conn;

cur=conn.cursor()

#print "cur=",cur;

cur.execute('create database if not exists python')

conn.select_db('python')

cur.execute('create table test(id int,info varchar(20))')

value=[1,'hi rollen']

cur.execute('insert into test values(%s,%s)',value)

values=

for i in range(9):

cur.executemany('insert into test values(%s,%s)',values)

conn.commit()

test=cur.execute('select * from test')

print test #記錄條數

result=cur.fetchone()

print 'id: %s info %s' %result

results=cur.fetchmany(5)

for r in results:

print r

cur.scroll(0,mode='absolute')

results=cur.fetchall()

for r in results:

print r[1]

cur.execute('update test set info="i am rollen" where id=3')

conn.commit()

cur.close()

conn.close()

except mysqldb.error,e:

print "mysql error %d: %s" %(e.args[0],e.args[1])

**注釋:

**中有很多類似***one、***many,***many的函式,作用比較好懂!

scroll(self,value,mode):移動指標到某一行。如果mode=『relative』,則表示從當前所在行移動value條,如果mode=『absolute』,表示從結果集的第一行移動value條

q&a:

①q:mysql notifier無法start mysql服務

a:進入manage items,刪除服務後,再重新新增服務

②q提示python、mysql不是內部或外部命令……,a:新增變數到path;③q安

裝mysql-python時,出現錯誤.一般是因為缺少visual c++的東西,或者安裝的是64位的python

a:安裝提示所缺少的東西後,再安裝mysql-python;或者嘗試安裝mysql-python-1.2.5.win-amd64-py2.7

python 連線mysql 使用sock 及引數

加引數指到mysql的配置 mysqldb.connect user root read default file etc my.conf 例如 conn mysqldb.connect host 10.3.18.142 user user,passwd pwd,db db,read default...

python安裝mysql及連線測試(win)

參考 安裝 測試 首先我的python版本是3.7 python scripts 目錄加到widnows的path環境變數 cmd中執行pip install pymysql 測試 import pymysql 不報錯即成功 然後我的ide中寫了測試 import pymysql db pymysq...

Python高階 連線 Mysql

本篇文章主要用 pymysql 來實現python3 mysql資料的連線。git clone cd pymysql python3 setup.py install 安裝過程如下圖所示 開啟資料庫連線 db pymysql.connect localhost username password t...