mysqldb连接mysql_python模块之MySQLdb: 用python连接mysql数据库

python模块之MySQLdb: 用python连接mysql数据库

mysql是一个优秀的开源数据库,它现在的应用非常的广泛,因此很有必要简单的介绍一下用python操作mysql数据库的方法。python操作数据库需要安装一个第三方的模块,在http://mysql-python.sourceforge.net/

有下载和文档。

由于python的数据库模块有专门的数据库模块的规范,所以,其实不管使用哪种数据库的方法都大同小异的,这里就给出一段示范的代码:

#

-*- encoding: gb2312 -*-

import

os, sys, string

import

MySQLdb

#

连接数据库

try

:

conn

=

MySQLdb.connect(host

=

'

localhost

'

,user

=

'

root

'

,passwd

=

'

xxxx

'

,db

=

'

test1

'

)

except

Exception, e:

print

e

sys.exit()

#

获取cursor对象来进行操作

cursor

=

conn.cursor()

#

创建表

sql

=

"

create table if not exists test1(name varchar(128) primary key, age int(4))

"

cursor.execute(sql)

#

插入数据

sql

=

"

insert into test1(name, age) values ('%s', %d)

"

%

(

"

zhaowei

"

,

23

)

try

:

cursor.execute(sql)

except

Exception, e:

print

e

sql

=

"

insert into test1(name, age) values ('%s', %d)

"

%

(

"

张三

"

,

21

)

try

:

cursor.execute(sql)

except

Exception, e:

print

e

#

插入多条

sql

=

"

insert into test1(name, age) values (%s, %s)

"

val

=

((

"

李四

"

,

24

), (

"

王五

"

,

25

), (

"

洪六

"

,

26

))

try

:

cursor.ex

相关文档:

复制记录,采用自查询方式

sql

INSERT INTO `table` ('id','aa','bb','cc') SELECT 'id','aa','bb','cc' from `table` (WHERE .....)

Tips:

/**

* 复制新纪录的时候,可能要更新id或者是部分数据(假设id自增加的情况)

*

* text_aa 为固定值 ,可在脚本调用中赋变量值 如($aa)

* 注意'text_aa' 与 `cc` 的区别 ......

MySQL五个查询优化方法

熟悉SQL的人都知道,完成同一个任务,SQL可能有多种写法,但不同写法的查询

性能可能会有天壤之别,本文列举出五个查询优化的方法

,当然,优化的方法还有很多。

1、优化数据类型

MySQL

中数据类型有多种,如果你是一名DBA,正在按照优化的原则对数据类型进行严格的检查,但开发

人� ......

以下是涉及到插入表格的查询的5种改进方法:

1)使用LOAD DATA INFILE从文本下载数据这将比使用插入语句快20倍。

2)使用带有多个VALUES列表的INSERT语句一次插入几行这将比使用一个单行插入语句快几倍。调整bulk_insert_buffer_size变量也能提高(向包含行的表格中)插入的速度。

3)可以对myisam表并行插入Concurrent_i ......

安装mysql

gem install mysql

使用mysql,如,rake db:migrate

会报错:

E:\study\ruby\rails_space>rake db:migrate

(in E:/study/ruby/rails_space)

!!! The bundled mysql.rb driver has been removed from Rails 2.2. Please install the mysql gem and try again: gem install mysql.

rake aborted!

193: ......

Query Profiler是MYSQL自带的一种query诊断分析工具,通过它可以分析出一条SQL语句的性能瓶颈在什么地方。通常我们是使用的explain,以及slow query log都无法做到精确分析,但是Query Profiler却可以定位出一条SQL语句执行的各种资源消耗情况,比如CPU,IO等,以及该SQL执行所耗费的时间等。不过该工具只有在MYSQL 5.0.37以 ......

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值