有没有利用python开发数据库的案例

作者&投稿:永厘 (若有异议请与网页底部的电邮联系)
数据库编程适合使用Python开发吗~

关键是看处理什么业务,WEB数据库,python也是很方便的,比如django的数据模型。

你可以访问Python数据库接口及API查看详细的支持数据库列表。不同的数据库你需要下载不同的DB API模块,例如你需要访问Oracle数据库和Mysql数据,你需要下载Oracle和MySQL数据库模块。
DB-API 是一个规范. 它定义了一系列必须的对象和数据库存取方式, 以便为各种各样的底层数据库系统和多种多样的数据库接口程序提供一致的访问接口 。
Python的DB-API,为大多数的数据库实现了接口,使用它连接各数据库后,就可以用相同的方式操作各数据库。
Python DB-API使用流程:

引入 API 模块。
获取与数据库的连接。
执行SQL语句和存储过程。
关闭数据库连接。

什么是MySQLdb?

MySQLdb 是用于Python链接Mysql数据库的接口,它实现了 Python 数据库 API 规范 V2.0,基于 MySQL C API 上建立的。

如何安装MySQLdb?

为了用DB-API编写MySQL脚本,必须确保已经安装了MySQL。复制以下代码,并执行:
#!/usr/bin/python
# -*- coding: UTF-8 -*-

import MySQLdb

如果执行后的输出结果如下所示,意味着你没有安装 MySQLdb 模块:
Traceback (most recent call last):
File "test.py", line 3, in
import MySQLdb
ImportError: No module named MySQLdb

安装MySQLdb,请访问 http://sourceforge.net/projects/mysql-python ,(Linux平台可以访问:https://pypi.python.org/pypi/MySQL-python)从这里可选择适合您的平台的安装包,分为预编译的二进制文件和源代码安装包。
如果您选择二进制文件发行版本的话,安装过程基本安装提示即可完成。如果从源代码进行安装的话,则需要切换到MySQLdb发行版本的顶级目录,并键入下列命令:
$ gunzip MySQL-python-1.2.2.tar.gz
$ tar -xvf MySQL-python-1.2.2.tar
$ cd MySQL-python-1.2.2
$ python setup.py build
$ python setup.py install

注意:请确保您有root权限来安装上述模块。

数据库连接

连接数据库前,请先确认以下事项:

您已经创建了数据库 TESTDB.
在TESTDB数据库中您已经创建了表 EMPLOYEE
EMPLOYEE表字段为 FIRST_NAME, LAST_NAME, AGE, SEX 和 INCOME。
连接数据库TESTDB使用的用户名为 "testuser" ,密码为 "test123",你可以可以自己设定或者直接使用root用户名及其密码,Mysql数据库用户授权请使用Grant命令。
在你的机子上已经安装了 Python MySQLdb 模块。
如果您对sql语句不熟悉,可以访问我们的 SQL基础教程

实例:

以下实例链接Mysql的TESTDB数据库:
#!/usr/bin/python
# -*- coding: UTF-8 -*-

import MySQLdb

# 打开数据库连接
db = MySQLdb.connect("localhost","testuser","test123","TESTDB" )

# 使用cursor()方法获取操作游标
cursor = db.cursor()

# 使用execute方法执行SQL语句
cursor.execute("SELECT VERSION()")

# 使用 fetchone() 方法获取一条数据库。
data = cursor.fetchone()

print "Database version : %s " % data

# 关闭数据库连接
db.close()

执行以上脚本输出结果如下:
Database version : 5.0.45

创建数据库表

如果数据库连接存在我们可以使用execute()方法来为数据库创建表,如下所示创建表EMPLOYEE:
#!/usr/bin/python
# -*- coding: UTF-8 -*-

import MySQLdb

# 打开数据库连接
db = MySQLdb.connect("localhost","testuser","test123","TESTDB" )

# 使用cursor()方法获取操作游标
cursor = db.cursor()

# 如果数据表已经存在使用 execute() 方法删除表。
cursor.execute("DROP TABLE IF EXISTS EMPLOYEE")

# 创建数据表SQL语句
sql = """CREATE TABLE EMPLOYEE (
FIRST_NAME CHAR(20) NOT NULL,
LAST_NAME CHAR(20),
AGE INT,
SEX CHAR(1),
INCOME FLOAT )"""

cursor.execute(sql)

# 关闭数据库连接
db.close()

数据库插入操作

以下实例使用执行 SQL INSERT 语句向表 EMPLOYEE 插入记录:
#!/usr/bin/python
# -*- coding: UTF-8 -*-

import MySQLdb

# 打开数据库连接
db = MySQLdb.connect("localhost","testuser","test123","TESTDB" )

# 使用cursor()方法获取操作游标
cursor = db.cursor()

# SQL 插入语句
sql = """INSERT INTO EMPLOYEE(FIRST_NAME,
LAST_NAME, AGE, SEX, INCOME)
VALUES ('Mac', 'Mohan', 20, 'M', 2000)"""
try:
# 执行sql语句
cursor.execute(sql)
# 提交到数据库执行
db.commit()
except:
# Rollback in case there is any error
db.rollback()

# 关闭数据库连接
db.close()

以上例子也可以写成如下形式:
#!/usr/bin/python
# -*- coding: UTF-8 -*-

import MySQLdb

# 打开数据库连接
db = MySQLdb.connect("localhost","testuser","test123","TESTDB" )

# 使用cursor()方法获取操作游标
cursor = db.cursor()

# SQL 插入语句
sql = "INSERT INTO EMPLOYEE(FIRST_NAME, \
LAST_NAME, AGE, SEX, INCOME) \
VALUES ('%s', '%s', '%d', '%c', '%d' )" % \
('Mac', 'Mohan', 20, 'M', 2000)
try:
# 执行sql语句
cursor.execute(sql)
# 提交到数据库执行
db.commit()
except:
# 发生错误时回滚
db.rollback()

# 关闭数据库连接
db.close()

实例:

以下代码使用变量向SQL语句中传递参数:
..................................
user_id = "test123"
password = "password"

con.execute('insert into Login values("%s", "%s")' % \
(user_id, password))
..................................

数据库查询操作

Python查询Mysql使用 fetchone() 方法获取单条数据, 使用fetchall() 方法获取多条数据。

fetchone(): 该方法获取下一个查询结果集。结果集是一个对象
fetchall():接收全部的返回结果行.
rowcount: 这是一个只读属性,并返回执行execute()方法后影响的行数。

实例:

查询EMPLOYEE表中salary(工资)字段大于1000的所有数据:
#!/usr/bin/python
# -*- coding: UTF-8 -*-

import MySQLdb

# 打开数据库连接
db = MySQLdb.connect("localhost","testuser","test123","TESTDB" )

# 使用cursor()方法获取操作游标
cursor = db.cursor()

# SQL 查询语句
sql = "SELECT * FROM EMPLOYEE \
WHERE INCOME > '%d'" % (1000)
try:
# 执行SQL语句
cursor.execute(sql)
# 获取所有记录列表
results = cursor.fetchall()
for row in results:
fname = row[0]
lname = row[1]
age = row[2]
sex = row[3]
income = row[4]
# 打印结果
print "fname=%s,lname=%s,age=%d,sex=%s,income=%d" % \
(fname, lname, age, sex, income )
except:
print "Error: unable to fecth data"

# 关闭数据库连接
db.close()

以上脚本执行结果如下:
fname=Mac, lname=Mohan, age=20, sex=M, income=2000

数据库更新操作

更新操作用于更新数据表的的数据,以下实例将 TESTDB表中的 SEX 字段全部修改为 'M',AGE 字段递增1:
#!/usr/bin/python
# -*- coding: UTF-8 -*-

import MySQLdb

# 打开数据库连接
db = MySQLdb.connect("localhost","testuser","test123","TESTDB" )

# 使用cursor()方法获取操作游标
cursor = db.cursor()

# SQL 更新语句
sql = "UPDATE EMPLOYEE SET AGE = AGE + 1
WHERE SEX = '%c'" % ('M')
try:
# 执行SQL语句
cursor.execute(sql)
# 提交到数据库执行
db.commit()
except:
# 发生错误时回滚
db.rollback()

# 关闭数据库连接
db.close()

删除操作

删除操作用于删除数据表中的数据,以下实例演示了删除数据表 EMPLOYEE 中 AGE 大于 20 的所有数据:
#!/usr/bin/python
# -*- coding: UTF-8 -*-

import MySQLdb

# 打开数据库连接
db = MySQLdb.connect("localhost","testuser","test123","TESTDB" )

# 使用cursor()方法获取操作游标
cursor = db.cursor()

# SQL 删除语句
sql = "DELETE FROM EMPLOYEE WHERE AGE > '%d'" % (20)
try:
# 执行SQL语句
cursor.execute(sql)
# 提交修改
db.commit()
except:
# 发生错误时回滚
db.rollback()

# 关闭连接
db.close()

执行事务

事务机制可以确保数据一致性。

事务应该具有4个属性:原子性、一致性、隔离性、持久性。这四个属性通常称为ACID特性。

原子性(atomicity)。一个事务是一个不可分割的工作单位,事务中包括的诸操作要么都做,要么都不做。
一致性(consistency)。事务必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。
隔离性(isolation)。一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。
持久性(durability)。持续性也称永久性(permanence),指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其有任何影响。

Python DB API 2.0 的事务提供了两个方法 commit 或 rollback。

在Windows平台上安装mysql模块用于Python开发

用python连接mysql的时候,需要用的安装版本,源码版本容易有错误提示。下边是打包了32与64版本。 
MySQL-python-1.2.3.win32-py2.7.exe 
MySQL-python-1.2.3.win-amd64-py2.7.exe
实例 1、取得 MYSQL 的版本

# -*- coding: UTF-8 -*-
#安装 MYSQL DB for python
import MySQLdb as mdb
con = None
try:
#连接 mysql 的方法: connect('ip','user','password','dbname')
con = mdb.connect('localhost', 'root','root', 'test');

#所有的查询,都在连接 con 的一个模块 cursor 上面运行的
cur = con.cursor()

#执行一个查询
cur.execute("SELECT VERSION()")
#取得上个查询的结果,是单个结果

data = cur.fetchone()
print "Database version : %s " % data
finally:
if con:
#无论如何,连接记得关闭
con.close()

实例 2、创建一个表并且插入数据

import MySQLdb as mdb
import sys

#将 con 设定为全局连接
con = mdb.connect('localhost', 'root', 'root', 'test');
with con:

#获取连接的 cursor,只有获取了 cursor,我们才能进行各种操作
cur = con.cursor()

#创建一个数据表 writers(id,name)
cur.execute("CREATE TABLE IF NOT EXISTS \
Writers(Id INT PRIMARY KEY AUTO_INCREMENT, Name VARCHAR(25))")

#以下插入了 5 条数据
cur.execute("INSERT INTO Writers(Name) VALUES('Jack London')")
cur.execute("INSERT INTO Writers(Name) VALUES('Honore de Balzac')")
cur.execute("INSERT INTO Writers(Name) VALUES('Lion Feuchtwanger')")
cur.execute("INSERT INTO Writers(Name) VALUES('Emile Zola')")
cur.execute("INSERT INTO Writers(Name) VALUES('Truman Capote')")

实例 3、 python 使用 slect 获取 mysql 的数据并遍历

import MySQLdb as mdb
import sys

#连接 mysql,获取连接的对象
con = mdb.connect('localhost', 'root', 'root', 'test');
with con:

#仍然是,第一步要获取连接的 cursor 对象,用于执行查询
cur = con.cursor()

#类似于其他语言的 query 函数, execute 是 python 中的执行查询函数
cur.execute("SELECT * FROM Writers")

#使用 fetchall 函数,将结果集(多维元组)存入 rows 里面
rows = cur.fetchall()

#依次遍历结果集,发现每个元素,就是表中的一条记录,用一个元组来显示
for row in rows:
print row

运行结果:

(1L, ‘Jack London')
(2L, ‘Honore de Balzac')
(3L, ‘Lion Feuchtwanger')
(4L, ‘Emile Zola')
(5L, ‘Truman Capote')
上面的代码,用来将所有的结果取出,不过打印的时候是每行一个元祖打印,现在我们使用方法,取出其中的单个数据:

import MySQLdb as mdb
import sys

#获取 mysql 的链接对象
con = mdb.connect('localhost', 'root', 'root', 'test');
with con:
#获取执行查询的对象
cur = con.cursor()
#执行那个查询,这里用的是 select 语句
cur.execute("SELECT * FROM Writers")
#使用 cur.rowcount 获取结果集的条数
numrows = int(cur.rowcount)
#循环 numrows 次,每次取出一行数据
for i in range(numrows):
#每次取出一行,放到 row 中,这是一个元组(id,name)
row = cur.fetchone()
#直接输出两个元素
print row[0], row[1]

运行结果:

1 Jack London
2 Honore de Balzac
3 Lion Feuchtwanger
4 Emile Zola
5 Truman Capote
实例 4、使用字典 cursor 取得结果集(可以使用表字段名字访问值)

import MySQLdb as mdb
import sys
#获得 mysql 查询的链接对象
con = mdb.connect('localhost', 'root', 'root', 'test')
with con:
#获取连接上的字典 cursor,注意获取的方法,
#每一个 cursor 其实都是 cursor 的子类
cur = con.cursor(mdb.cursors.DictCursor)
#执行语句不变
cur.execute("SELECT * FROM Writers")
#获取数据方法不变
rows = cur.fetchall()
#遍历数据也不变(比上一个更直接一点)
for row in rows:
#这里,可以使用键值对的方法,由键名字来获取数据
print "%s %s" % (row["Id"], row["Name"])

实例 5、获取单个表的字段名和信息的方法

import MySQLdb as mdb
import sys
#获取数据库的链接对象
con = mdb.connect('localhost', 'root', 'root', 'test')
with con:
#获取普通的查询 cursor
cur = con.cursor()
cur.execute("SELECT * FROM Writers")
rows = cur.fetchall()
#获取连接对象的描述信息
desc = cur.description
print 'cur.description:',desc
#打印表头,就是字段名字
print "%s %3s" % (desc[0][0], desc[1][0])
for row in rows:
#打印结果
print "%2s %3s" % row

运行结果:

cur.description: ((‘Id', 3, 1, 11, 11, 0, 0), (‘Name', 253, 17, 25, 25, 0, 1))
Id Name
1 Jack London
2 Honore de Balzac
3 Lion Feuchtwanger
4 Emile Zola
5 Truman Capote
实例 6、使用 Prepared statements 执行查询(更安全方便)

import MySQLdb as mdb
import sys

con = mdb.connect('localhost', 'root', 'root', 'test')
with con:
cur = con.cursor()
#我们看到,这里可以通过写一个可以组装的 sql 语句来进行
cur.execute("UPDATE Writers SET Name = %s WHERE Id = %s",
("Guy de Maupasant", "4"))
#使用 cur.rowcount 获取影响了多少行
print "Number of rows updated: %d" % cur.rowcount

结果:
Number of rows updated: 1

实例 7、把图片用二进制存入 MYSQL

有人喜欢把图片存入 MYSQL(这种做法貌似很少吧),我看大部分的程序,图片都是存放在服务器上的文件,数据库中存的只是图片的地址而已,不过 MYSQL 是支持把图片存入数据库的,也相应的有一个专门的字段 BLOB (Binary Large Object),即较大的二进制对象字段,请看如下程序,注意测试图片自己随便找一个,地址要正确: 
首先,在数据库中创建一个表,用于存放图片:

复制代码代码如下:

CREATE TABLE Images(Id INT PRIMARY KEY AUTO_INCREMENT, Data MEDIUMBLOB);

然后运行如下 PYTHON 代码进行:

import MySQLdb as mdb
import sys

try:
#用读文件模式打开图片
fin = open("../web.jpg")
#将文本读入 img 对象中
img = fin.read()
#关闭文件
fin.close()
except IOError, e:
#如果出错,打印错误信息
print "Error %d: %s" % (e.args[0],e.args[1])
sys.exit(1)
try:
#链接 mysql,获取对象
conn = mdb.connect(host='localhost',user='root',passwd='root',
db='test')
#获取执行 cursor
cursor = conn.cursor()
#直接将数据作为字符串,插入数据库
cursor.execute("INSERT INTO Images SET Data='%s'" %
mdb.escape_string(img))
#提交数据
conn.commit()
#提交之后,再关闭 cursor 和链接
cursor.close()
conn.close()
except mdb.Error, e:
#若出现异常,打印信息
print "Error %d: %s" % (e.args[0],e.args[1])
sys.exit(1)

实例 8、从数据库中把图片读出来

import MySQLdb as mdb
import sys

try:
#连接 mysql,获取连接的对象
conn = mdb.connect('localhost', 'root', 'root', 'test');
cursor = conn.cursor()
#执行查询该图片字段的 SQL
cursor.execute("SELECT Data FROM Images LIMIT 1")
#使用二进制写文件的方法,打开一个图片文件,若不存在则自动创建
fout = open('image.png','wb')
#直接将数据如文件
fout.write(cursor.fetchone()[0])
#关闭写入的文件
fout.close()
#释放查询数据的资源
cursor.close()
conn.close()
except IOError, e:
#捕获 IO 的异常 ,主要是文件写入会发生错误
print "Error %d: %s" % (e.args[0],e.args[1])
sys.exit(1)

实例 9、使用 Transaction 即事务(手动提交,自动回滚)

import MySQLdb as mdb
import sys

try:
#连接 mysql,获取连接的对象
conn = mdb.connect('localhost', 'root', 'root', 'test');
cursor = conn.cursor()
#如果某个数据库支持事务,会自动开启
#这里用的是 MYSQL,所以会自动开启事务(若是 MYISM 引擎则不会)
cursor.execute("UPDATE Writers SET Name = %s WHERE Id = %s",
("Leo Tolstoy", "1"))
cursor.execute("UPDATE Writers SET Name = %s WHERE Id = %s",
("Boris Pasternak", "2"))
cursor.execute("UPDATE Writer SET Name = %s WHERE Id = %s",
("Leonid Leonov", "3"))
#事务的特性 1、原子性的手动提交
conn.commit()
cursor.close()
conn.close()
except mdb.Error, e:
#如果出现了错误,那么可以回滚,就是上面的三条语句要么执行,要么都不执行
conn.rollback()
print "Error %d: %s" % (e.args[0],e.args[1])

结果: 
1、因为不存在 writer 表( SQL 第三条语句),所以出现错误:Error 1146: Table ‘test.writer' doesn't exist 
2、出现错误,出发异常处理, 3 条语句的前两条会自动变成了没有执行,结果不变 
3、如果本代码放到一个 MyISAM 引擎表,前两句会执行,第三句不会;如果是 INNDB 引擎,则都不会执行。




Python 在编程语言中是什么地位?为什么很多大学不教 Python
首先,跟最近大热的AI人工智能和深度学习技术是分不开的。现在流行的AI人工智能技术大部分都是用Python语言编写的,这大大促进了的Python语言的发展。AI深度学习技术本身的特点决定了其不适合静态编译型语言,而Python语言被选作AI技术框架的基础语言,更多的是源于Python的动态特性及其开发效率高等性能优势。...

高考毕业学编程,小白0基础Python学习路线?
首先看《Python编程:从入门到实战》这本书。其次检索一个叫 量化分析师的Python日记,有14天,可以跟着里面的内容联系 三、数据分析教材推荐 1、《利用Python进行数据分析》第二版 2、《精益数据分析》四、爬虫与数据抓取 1.通过网页直接抓取 2.通过api来抓取 3.通过模拟浏览器来抓取 4.反爬虫 五、...

编程python有必要学吗
编程python有必要学。1、强大的软件库生态系统 拥有众多的软件库选择,是Python成为人工智能最受欢迎的编程语言的主要原因之一。软件库由PyPi等不同源发布的模块或模块组成,其中包括预先编写的代码片段,允许用户访问某些功能或执行不同操作。Python库提供基本级项目,开发人员不必每次都从头编码,降低程序开发...

为什么这么多人开始学Python?
3.Python纳入山东省的小学教材,从小学就开始学编程了;4.前段时间,网上流传一组《人工智能实验教材》的图片,照片火起来的原因是教材是为幼儿园的小朋友们设计的!Python列入小学、初高中必修课程已不是什么新鲜事了,现在Python又开始“入侵”幼儿园了,有网友调侃道:看来Python将陪你从幼儿园到大学,...

有Python新手嘛,大家觉得Python学习难不难呀?
这些东西都比学习Python语法难多了。光是开发web app就得把HTML CSS和JAVASCRIPT全部学一遍才行。也可以把Python当作扳手或者螺丝刀或者电钻这样的工具,在学会使用这些工具后,要去进行修理汽车或者修大桥这样的任务。学用工具简单,拿工具来完成任务才是难点。Python由荷兰数学和计算机科学研究学会的Guido ...

普通人学python有什么用?
Python有上百种Web开发框架,有很多成熟的模板技术,选择Python开发Web应用,不但开发效率高,而且运行速度快。二、网络爬虫 网络爬虫是Python比较常用的一个场景,国际上google在早期大量地使用Python语言作为网络爬虫的基础,带动了整个Python语言的应用发展。如:从各大网站爬取商品折扣信息,比较获取最优选择...

Python是什么?它有何用途?
有几个做个上亿PV的并发网站开发?有几个看过LINUX内核源码?如果没有,乖乖先把入门语言学会吧 四、自动化运维 Python能满足绝大部分自动化运维的需求,又能做后端C\/S架构,又能用WEB框架快速开发出高大上的WEB界面,只有当你自已有能力做出一套运维自动化系统的时候,你的价值才体现出来。

Python 在编程语言中是什么地位?为什么很多大学不教 Python?
Python在诞生之初,只是用来在Linux上给Perl和shell做衔接用的“胶水”,而今天已经成为了主流的编程语言,能获得今天的地位,当然具备诸多优势。。。比如数学运算相关的各种库,爬虫,等等。。。但这都不是导致Python流行的最根本原因。有没有比Python运算更强的语言?多得是 有没有比Python爬虫效率更高...

为什么使用Python,Python应用场景?
因为Python是通用的。Python有许多实现(利用其他语言来写Python解释器),不仅仅是CPython。它可以基于Java,C,Python自己,C#,Ruby,Javascript等各个语言制作。可以这么说,Python的底层实现语言是最丰富的,绝对没有之一。所以它可以和C\/C++\/Java\/C#\/Ruby\/Javascript等各类语言直接交换数据。不仅仅通过...

python可以做什么工作呢
三、网络爬虫工程师网络爬虫作为数据采集的利器,在大数据时代作为数据的源头,十分有用武之地。利用Python可以更快的提升对数据抓取的精准程度和速度,是数据分析师的福祉,通过网络爬虫,让BOSS再也不用担心你没有数据。做爬虫工程师的的薪资为20K起,当然,因为大数据,薪资也将一路上扬。四、Python web...

绵竹市13430158676: 有没有会用python做大数据的前辈 -
阿风磺苄: Python简单易学、免费开源、高层语言、可移植性超强、可扩展性、面向对象、可嵌入型、丰富的库、规范的代码等.Python除了极少的涉及不到的开发之外,其他基本上可以说全能:系统运维、图形处理、数学处理、文本处理、数据库编程、网络编程、web编程、多媒体应用、pymo引擎、爬虫编写、机器学习、人工智能等等.Python的应用特别广,中国现在的人才缺口超过100万.如果你想要专业的学习Python开发,更多需要的是付出时间和精力,一般在2w左右.应该根据自己的实际需求去实地看一下,先好好试听之后,再选择适合自己的.只要努力学到真东西,前途自然不会差.

绵竹市13430158676: Python一般适合开发什么
阿风磺苄: python适合做什么开发 Python不仅仅是一个设计优秀的程序语言,它能够完成现实中的各种任务,你可以在任何场合应用Python,从网站和游戏开发到机器人和航天飞机控制. 1、python可以用于系统编程.Python对操作系统服务的内置接口,...

绵竹市13430158676: 数据库编程适合使用Python开发吗 -
阿风磺苄: 关键是看处理什么业务,WEB数据库,python也是很方便的,比如django的数据模型.

绵竹市13430158676: python三本经典书籍都是什么? -
阿风磺苄: python三本经典书籍有:《深度学习入门:基于Python的理论与实现》,《Python高性能(第2版)》,《Python科学计算最佳实践:SciPy指南》. 1、《深度学习入门:基于Python的理论与实现》 本书深入浅出地剖析了深度学习的原理和相关...

绵竹市13430158676: python能干什么 -
阿风磺苄: 系统编程:提供API(Application Programming Interface应用程序编程接口),能方便进行系统维护和管理,Linux下标志性语言之一,是很多系统管理员理想的编程工具. 图形处理:有PIL、Tkinter等图形库支持,能方便进行图形处理. 数学处...

绵竹市13430158676: python操作数据库postgresql database是什么意思 -
阿风磺苄: 1.简述python可以操作多种数据库,诸如SQLite、MySql、PostgreSQL等,这里不对所有的数据库操作方法进行赘述,只针对目前项目中用到的PostgreSQL做一下简单介绍,主要包括python操作数据库插件的选择、安装、简单使用方法、测试连接数据库成功.2.数据库操作插件的选择 PostgreSQL至少有三个python接口程序可以实现访问,包括PsyCopg、PyPgSQL、PyGreSQL(PoPy已经整合在PyGreSQL中),三个接口程序各有利弊,需要根据实践选择最适合项目的方式.推荐使用PsyCopg,对python开发框架的兼容性都很好,本文中我们只讨论这个插件.

绵竹市13430158676: python Django 生成sql语句 -
阿风磺苄: Django提供了sql,sql_all命令来生成MODEL的SQL语句,当定义好Django Model后,可以在初始化调用Syncdb方法来自动在数据库里面生成相应的表.Model定义如下:class TestModel(models.Model):Name=models.CharField(max_length=64,...

绵竹市13430158676: Python语言做什么的 -
阿风磺苄: Python语言是一种面向对象的动态类型语言.Python语言最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的、大型项目的开发.作为一种解释型脚本语言,可以在以下方面加以应用:1...

绵竹市13430158676: 有没有Python,Apache,mySQl的集成开发环境?高手来~ -
阿风磺苄: 这个是有的.下面这个站点也包括Windows + Apache + MySQL + PHP/Ruby/Python/Django, 有直接搭建好Django和Rails的一键安装环境.下载地址:http://bitnami.com/stacks

绵竹市13430158676: 使用python连接mysql时是不是可以创建一个新的数据库 -
阿风磺苄: 可以的,通过mysql jdbc连接之后,可以对数据库做任何操作,包括建库,建表,数据插入,更新删除等等都是可以的,对应的代码网上有很多的

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网