使用python进行PostgreSQL 数据库连接
PostgreSQL 数据库是最常用的关系型数据库之一,最吸引人的一点是它作为开源数据库且具有可拓展性,能够提供丰富的应用。运用python可以很简单的建立PostgreSQL 数据库连接,其中最受欢迎的就是psycopg。
安装psycopg2
Psycopy是针对python的Postgres 数据库的适配模块,安装psycopg2可以整合python和Postgres 。使用cmd输入命令进行安装:
pip install psycopg2
也可以在pycharm中查找psycopg2安装包:
连接数据库
在pycharm中选择Database,点击左上角的+添加数据库,选择postgresql:
创建数据库连接后点击apply,数据库会显示在右侧窗格中。
下面使用 psycopy2.connect()
方法连接到postgresql数据库。通过调用cursor
类中的execute()
方法对数据库进行操作。在execute()
中用SQL语句创建表。使用commit()
将数据发送到数据库服务器,最后使用close()
关闭数据库。commit()
能够对数据库进行改变,且不可逆。
connect()
方法的参数一般包括:
database
: 要连接的数据库名称user
:连接数据库的用户名password
: 连接数据库的密码host
: 数据库端口的地址,一般为 “localhost”,或者主机的IP地址port
: 门户 默认为5432.
在数据库中创建新的表
使用SQL(Structured Query Language)语句CREATE TABLE
添加新的表:
import psycopg2
#建立数据库连接
con = psycopg2.connect(database="postgres", user="postgres", password="123456", host="localhost", port="5432")
#调用游标对象
cur = con.cursor()
#用cursor中的execute 使用DDL语句创建一个名为 STUDENT 的表,指定表的字段以及字段类型
cur.execute('''CREATE TABLE STUDENT
(ADMISSION INT PRIMARY KEY NOT NULL,
NAME TEXT NOT NULL,
AGE INT NOT NULL,
COURSE CHAR(50),
DEPARTMENT CHAR(50));''')
#提交更改,增添或者修改数据只会必须要提交才能生效
conmit()
con.close()
在数据库表中插入数据
使用INSERT INTO
在以经生成的表中插入数据
#在表中插入一条数据
cur.execute("INSERT INTO STUDENT (ADMISSION,NAME,AGE,COURSE,DEPARTMENT) VALUES (3420, 'John', 18, 'Computer Science', 'ICT')");
在Database中可以查看添加的数据
从数据库取回数据
使用fetchall()
取回数据,SQL语句定义选择的字段
cur.execute("SELECT admission, name, age, course, department from STUDENT")
rows = cur.fetchall()
for row in rows:
print("ADMISSION =", row[0])
print("NAME =", row[1])
print("AGE =", row[2])
print("COURSE =", row[3])
print("DEPARTMENT =", row[4], "\n")
print("Operation done successfully")
con.close()
更新表数据
同样使用SQL语句更新目标字段,使用commit()
更新数据库
cur.execute("UPDATE STUDENT set AGE = 20 where ADMISSION = 3420")
print("Total updated rows:", cur.rowcount)
conmit()
更新后的数据库:
删除表数据
cur.execute("DELETE from STUDENT where ADMISSION=3420;")
conmit()
删除后的表格:
总结
使用python连接数据库的方法大体一致,同样的方法可以连接到MySQL,SQLserver,Oracle等等数据库。SQLite的连接方法也与其相似,且由于python内置了SQLite,使用更加简便。
一般连接数据库的步骤为:
- 使用
connect
对象建立连接 - 使用
cursor()
游标对象 - 调用
execute()
方法,书写SQL语句 - 抓取数据
- 使用
commit()
提交数据 - 使用
close()
关闭连接
用于连接到MySQL需要安装的模块有MySQL connector python
和MySQLdb
,
MySQL connector python 下载地址:https://www.mysql/downloads/
或使用命令安装:
pip install mysql-connector-python
MySQLdb 是用于Python链接Mysql数据库的接口,下载地址 https://sourceforge/projects/mysql-python/
在Python数据库接口及API可以查找所使用的的数据库对应的模块。
更多推荐
使用python进行PostgreSQL 数据库连接
发布评论