直連mysql Python直連MySQL資料庫

2021-10-19 00:08:59 字數 2032 閱讀 8834

python標準資料庫介面為python db-api, python db-api為開發人員提供了資料庫應用 程式設計介面。

python 資料庫介面支援非常多的資料庫,你可以選擇適合你專案的資料庫:

gadfly

msql

mysql

postgresql

microsoft sql server 2000 informix

interbase oracle sybase

你可以訪問python資料庫介面及api檢視詳細的支援資料庫列表。

db-api是乙個規範。它定義了一系列必須的物件和資料庫訪問方式, 以便為各種各樣的底層資料庫系統和多種多樣的資料庫介面程式提供一致的訪問介面。

python的db-api,為大多數的資料庫實現了介面,使用它連線各資料庫後,就可以用相同 的方式操作各資料庫。

python db-api使用流程:

引入api模組。

獲取與資料庫的連線。

執行sql語句和儲存過程。

關閉資料庫連線。

1. mysqldb

mysqldb是用於python鏈結mysql資料庫的介面,它實現了python 資料庫api規範v2.0,基於mysql c api上建立的。

安裝直接使用pip進行安裝,在此之前需要安裝一些系統依賴包。

centos

yum install gcc python-devel mysql-devel zlib-devel openssl-devel

ubuntu

sudo apt-get install libmysqlclient-dev libmysqld-dev python-dev python-setuptools

安裝完依賴,直接使用pip安裝,mysqldb模組的名字在pip上叫mysql-python。

pip install mysql-python

常用函式

python db api 2.0 對事務提供了兩個方法:

commit() 提交

rollback() 回滾

cursor用來執行命令的方法:

callproc(self, procname, args) 用來執行儲存過程,接收的引數為儲存過程名和引數列表,返回值為受影響的行數

execute(self, query, args) 執行單條sql語句,接收的引數為sql語句本身和使用的引數列表,返回值為受影響的行數

executemany(self, query, args) 執行單挑sql語句,但是重複執行引數列表裡的引數,返回值為受影響的行數

nextset(self) 移動到下乙個結果集

cursor用來接收返回值的方法:

fetchall(self) 接收全部的返回結果行.

fetchmany(self, size=none) 接收size條返回結果行.如果size的值大於返回的結果行的數量,則會返回cursor.arraysize條資料.

fetchone(self) 返回一條結果行.

rowcount 這是乙個唯讀屬性,並返回執行execute() 方法後影響的行數。

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

例項#!/usr/bin/env python

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

import mysqldb as mdb

# 連線資料庫

conn = mdb.connect('localhost', 'root', 'root')

# 也可以使用關鍵字引數

conn = mdb.connect(host='127.0.0.1', port=3306, user='root', passwd='root', db='test', charset='utf8')

# 也可以使用字典進行連線引數的管理

config =

參考:

direct直連模式

如果我們需要接收指定的訊息,可以通過直連型別的交換機實現,佇列1 2將僅接受key1的訊息,而佇列3 4將接收key2的訊息。生產者 public class producer public static void main string argv throws exception channel....

直連資料來源

在潤幹報表部署中,一般我們使用到應用伺服器的連線池配置進行與資料庫互動。直接通過reportconfig.xml中的datasource中配置的jndi名稱找到連線池.如果有些客戶不想通過連線池的配置,直接使用jdbc直連來與資料庫操作如何處理呢.在reportconfig.xml中也提供了相應的配...

雲直連AWS 海外

客戶需求說明 1 北京辦公室通過ipsec或專線連線北京aws 日本aws,頻寬需求2m至10m 2 目前北京aws多個賬號,日本aws多個賬號,日本aws是否可以使用aws對等連線的產品。分析說明 1 根據客戶的需求分析,pbs提供一台裝置在客戶的北京office,通過ipsec和專線至pbs的p...