MySql基础使用

来源:互联网 发布:mac版ps cs6序列号 编辑:程序博客网 时间:2024/05/16 23:41

写在前面

严格的:这篇博客旨在使用清晰的描述方式,将在基于python的应用级程序设计中需要用到的mysql相关知识。
简单:一文抓住 mysql关键知识点。

是什么?

严格的:mysql是一种服务器,数据库是建立在远端服务器上的数据管理服务端。Mysql是一种关系型的数据库。
数据库分类:可分为关系型和非关系型数据库。关系型:将复杂的数据结构归为简单的二元关系(二维表格形式)。这种类型的数据库有:Oracle、Mysql、SQLServer、Sybase、Informix、access、DB2等……
非关系型数据库:即Nosql, 泛指非关系型的数据库。随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,NoSql数据库在特定的场景下可以发挥出难以想象的高效率和高性能,它是作为对传统关系型数据库的一个有效的补充。Nosql包括:键值存储数据库(key-value)、列存储(Column-oriented)数据库、面向文档(Document-Oriented)数据库、图形数据库。
代表性的nosql有:Memcached(key-value)、Redis(key-value)、MongoDB(Document-oriented)、Cassandra(Column-oriented)

什么样?

简单的:一个服务器上可以有多个数据库、一个数据库中有多张表、一张表由多个行多个列组成。一个行是一条数据,一列(一个字段)表示一种数据属性。

怎么得到mysql?

怎么用?

简单的:
Insert into table_1(id,name) values (2,’千万’); 在表中增加一条数据
Delete from table_1 where from id= 3; 删除表中的数据
Updata table_1 set name=’速度’ where name=’xx’; 改变表中的数据
Select id,name from table_1 where id >2; 查看表中的数据

关于库

简单的:
Create datadase 数据库名; 创建数据库
Dorp database 数据库名; 删除数据库
Show databases; 查看当前服务器中所包括的数据库
Use 数据库名; 进入某个数据库下,以便接下来的操作
严格的:

关于表

简单的:
创建表->
create table 表名(
字段名1 类型[(宽度) 约束条件],
字段名2 类型[(宽度) 约束条件],
字段名3 类型[(宽度) 约束条件]
);
Drop table 表名; 删除表
Alter table 表名 change 旧字段名 新字段名 数据类型 [完整性约束条件…]; 修改表中的字段;
Desc table_1; 查看表的字段结构

关于数据

简单的:
Insert into table_1(id,name) values (2,’千万’); 在表中增加一条数据
Delete from table_1 where from id= 3; 删除表中的数据
Updata table_1 set name=’速度’ where name=’xx’; 改变表中的数据
Select id,name from table_1 where id >2; 查看表中的数据

mysql的其他功能

视图

视图是一张基于sql得到的一张虚拟表,并存在数据库中以供之后使用。
简单的:
Create view view_1 as select * from ……; 创建视图
Alter view view_2 as sql语句; 修改视图(等于重建视图)
Drop view view_2;

触发器

在正常进行增删改操作前后,添加一些功能(类比与装饰器)。
简单的:
Create trigger tri_1 before/after insert/delete/update on table_1 for each row; 创建一个触发器
Drop trigger tri_1; 删除一个触发器;

储存过程

储存过程是用来封装一系列aql操作,方便以后调用。
简单的:
创建储存过程->
Create procedure p1()
Begin
…………
End

函数

函数是mysql提供给你的自定义运算功能,其中不能有sql语句。
简单的:
创建函数:
Create function f1(i int) returns int
Begin
Declare aa int;
Set aa = 2;
Return(aa)
End;
Drop function fi; 删除函数

事务

事务是将多个sql语句作为一个整体,一旦某一个出现错误,即可回滚到原来的状态,从而保证数据库数据完整性。
简单的:
Start transaction; 开启事务
Sql语句……
Commit; 提交结果
Rollback; 回滚

在python中使用mysql

Python提供了用于操纵mysql的接口
简单的:
安装:pip install pymysql

Import pymysql # 导入
conn=pymysql.connect(host=’localhost’,user=’root’,password=’123’,database=’egon’,charset=’utf8’) # 建立链接
cursor=conn.cursor() # 获得游标
sql=’select * from userinfo where name=”%s” and password=”%s”’ %(user,pwd) #注意%s需要加引号
re = cursor.execute(sql) # 执行sql语句,返回这条语句影响的行数
conn.commit() # 提交sql执行的结果,对数据的修改有效
res = cursor.fechall() # 获取查询的结果(以元祖的形式)
conn.close() # 关闭链接