1.简介
ORM:object relationship map对象关系映射
RDBMS: relationship database management system关系数据库管理系统
当文件存储机制或创建的数据存储系统不适用于大项目时,需转而使用数据库。
在python中,数据库通过适配器的方式进行访问的。适配器是一个python模块,使用它可以与关系数据库的客户端库(通常是使用C 语言编写)接口相连。见P202.
数据库命令和查询操作是通过SQL语句提交给数据库的,大多数关系数据库都使用SQL语句,基本SQL语句:(不区分大小写,关键字一般大写,分号结尾)
1.CREATE DATABASE test;
GRANT ALL ON test.* to user(s);
2.USE test;
3.DROP DATABASE test; #移除所有表和数据
4.CREATE TABLE users(login VARCHAR(8),userid INT,projid INT);
5.UPDATE users SET projid=2 WHERE projid=4; UPDATE users SET projid=2 WHERE userid=01;
6.INSERT INTO users VALUES(‘leanns’,10,1);
7.DELETE FROM users WHERE projid=%d; #没有WHERE是删除所有行
2.python的DB-API
DB-API是阐明一系列所需对象和数据库访问机制的标准,可以为不同的数据库适配器和底层数据库系统提供一致性的访问。(为不同的关系数据库提供一致性的接口)
2.1模块属性
1)数据属性
2)参数风格
3)函数属性
4)异常
2.2Connection对象
应用与数据库之间进行通信需要建立数据库连接。只有通过数据库连接才能把命令传递到服务器。当一个连接(或连接池)建立后,可以创建一个游标,向数据库发送请求,然后从数据库中接收回应。
Connection对象方法如下表:
2.3Cursor对象
当建立连接后,就可以和数据库进行通信了。游标可以让用户提交数据库命令,并获得查询的结果行。游标创建好后,就可以执行查询或命令。见P206.
游标对象最重要的属性是execute*()和fetch*()方法,所有针对数据库的服务请求都是通过它们执行的。见P207.
2.4类型对象和构造函数
为数据库提供期望格式的输入:创建构造函数。见P208.
2.5关系数据库
Python有哪些数据库系统的接口呢?答:几乎所有的数据库系统。见P209.
2.6数据库和python:适配器
对于每种支持的数据库,python都有一个或多个适配器用于连接python中的目标数据库系统。挑选出最合适的适配器:按照性能,文档/网站是否可用等标准。
适配器只提供连接数据库的基本需求。
2.7使用数据库和适配器举例
3安装与运行
1)sudo apt-get install mysql-server mysql-client #安装mysql服务端和客户端, 在安装过程中会提示输入管理员root账户的密码,这个需要记住的。”root:123456”
2)sudo netstat -tap | grep mysql #验证mysql安装成功
3)mysql -u root -p #登录mysql
CREATE DATABASE test; #创建数据库以便对其进行操作
4)sudo start mysql #启动mysql服务
5)sudo stop mysql #关闭mysql服务
6)mysql安装后的目录结构(此结构只针对于使用apt-get install 在线安装情况)
数据库存放目录: /var/lib/mysql/
相关配置文件存放目录: /usr/share/mysql
相关命令存放目录: /usr/bin(mysqladmin mysqldump等命令)
启动脚步存放目录: /etc/rc.d/init.d/
pip install pymysql(python3)