mysql数据库python应用场景_python进阶:Mysql数据库的简介操作应用

【本文导读】MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。

主要内容:

Mysql数据库的特性简介:

Mysql数据库的操作实践:

用户(user)的操作实例:

数据库(database)的操作实例:

表(table)的操作实例:数据表的创建删除、表结构的查看修改、表数据的增删改查、表约束的创建删除、表关系的创建删除:

Mysql数据库的应用场景:

一、Mysql数据库的特性简介:

1、开源免费:由于MySQL是开放源代码的,因此任何人都可以在General Public License的许可下下载并根据个性化的需要对其进行修改。

2、快速可靠:MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。

3、关系模型:关系型数据库是采用关系模型来组织数据的数据库,每张二维表都有一个关系名(表名),其中的行和列指字段和字段信息。

二、Mysql数据库的操作实践:

(一)Mysql用户(user)的操作实例:

(1)mysql -u用户名 -p密码;说明:进入mysql,其中:root为管理员,user为一般用户,特别要mysql语句要用;结尾!!!

(2)create user 'username'@ '%' identified by 'password';说明:创建用户,用户名user_name自定,%表示可远程连接,也可用localhost表示本机。

(3)grant all on *.* to 'user_name'%; 说明:给用户赋予权限。

(4)flush privileges;说明:使权限更改立即生效。

(5)\q;说明:退出mysql。

(6)select user();说明:查看当前用户。

(二)Mysql数据库(database)的操作实例:

(1)create database [if not exists] dbname;说明:创建数据库,重复创建会报错,可以加上if not exists,db_name为数据库名。

(2)show datbases;说明:查看有哪些数据库。

(3)select database();说明:查看在哪个数据库里

(4)use db_name;说明:进入(切换)数据库。

(5)drop database [if exists] db_name说明:删除数据库,如果不知道数据库是否存在,记得加上if exists,db_name为数据库名。

(三)Mysql表(table)的操作实例:

1、数据表的创建与删除:

(1)create table [if not exists] table_name(colum_name columtype,colum_name colum_type);说明:创建表,table_name为表名,colum_name为字段名,colum_type为数据类型(int整数型、float浮点型、varchar字符型、date日期型),千万注意标点符号。

(2)show tables;说明:查看有那些表。

(3)alter table tablename1 rename table_name2;说明:修改表名。

(4)drop table table_name;说明:删除表。

2、表结构的查看修改

(1)desc table_name;说明:查看表结构。

(2)show create table table_name;说明:查看表结构。

(3)alter table_name change 'field1' 'feild2' type;说明:修改字段。

(4)alter tablename add colum_name colum_type;说明:增加字段。

(5)alter tablename drop columname colum_type;说明:删除字段。

3、表数据的增删改查:

(1)insert into table_name(field1,field2,...) values(value1,value2,...,]);说明:插入数据,

(2)insert into table_name set field1=value1;说明:插入数据,

(3)select *from tablename[where where_condition];说明:查询所有(或有条件where)数据

(4)update tablename set field1=value1 where where_condition;说明:更新数据,必须写where条件

(5)delete from tablename where where_conditon;说明:删除数据,必须写where条件,否则删除全部。

4、表约束的创建删除:

相关约束:非空约束(非空约束的字段,insert时必须添加数据)、唯一约束(确保字段中的值的唯一)、主键约束(primary key 可以唯一标识一条数据,每张表里只能一个主键,非空且唯一,当表里没有主键时,第一个出现的非空且唯一的列被当成主键)、外键约束(foreign key 保持数据一致性,完整性实现一对一或一对多关系,外键必须关联到键上面去,一般是关联到另一张表的主键)、自增长(auto_increment 自动编号,必须与主键组合使用,一个表只有一个自增长,默认起始值为1,每次增量为1)、默认约束(default 初始值设置,插入记录时,如果没有明确为字段赋值,则自动赋予默认值)。

在已经创建好的表(table_name)里,添加各类约束:

(1)alter table table_name modify colum_name colum_type not null;说明:非空约束

(2)alter tabe table_name modify colum_name colum_type;说明:取消非空约束。

(3)alter table table_name add unique key(name);说明:唯一约束(方法一)

(4)alter table table_name modify name varchar(10) unique key;说明:唯一约束(二)

(5)alter table table_name drop key name;说明:删除唯一约束。

(6)alter table table_name add primary key (colum_name);说明:主键约束(一)

(7)alter table table_name modify name varchar() primary key;说明:主键约束(二)

(8)alter tabe table_name drop primary key;说明:取消主键约束。

(9)alter table table_b add constrraint AB_id foreign key(table_b:fy_id) references table_a(a_id) ;说明:外键约束

(10)alter tabe table_name drop foreign key AB_id ;说明:取消外键约束。

(11)alter table table_name modify colum_name columtype auto_increment;说明:自增长约束

(12)alter tabe table_name modify colum_name colum_type;说明:取消自增长约束。

(13)alter table table_name modify colum_name colum_type default;说明:默认约束

(14)alter tabe table_name modify colum_name colum_type;说明:取消默认约束。

创建表(table_name)的同时,添加各类约束:

(1)cerate table table_name(colum_name colum_type not null);说明:非空约束

(2)cerate table table_name(colum_name colum_type unique key);说明:唯一约束

(3)cerate table table_name(colum_name colum_type primary key);说明:主键约束

(4)cerate table table_b(fy_id int not null,constraint ABid foreign key(fy_id) references tale_a(a_id));说明:外键约束

(5)cerate table table_name(colum_name columtype primary key auto_increment);说明:自增长约束

(6)cerate table table_name(colum_name columtype primary key auto_increment);说明:默认约束

5、表关系的创建删除

(1)一对多关系,说明:用外键关联

(2)一对一关系,说明:用外键方式,把两个表的主键关联

(3)多对多关系,说明:需要创建中间表来实现

三、Mysql数据库的应用场景

1、高级查询(表单查询,子查询,内连接,左外连接,右外连接)

2、python控制mysql

(未完待续,准备中)

你可能感兴趣的:(mysql数据库python应用场景_python进阶:Mysql数据库的简介操作应用)