首页 > 代码库 > python--MySql
python--MySql
数据库概述
数据(Data)
描述事物的符号记录称为数据
在计算机中描述一个事物,就需要抽取这一事物的典型特征,组成一条记录,如:
1 egon,male,18,1999,山东,计算机系,2017,oldboy
单纯的一条记录并没有任何意义,如果我们按逗号作为分隔,依次定义各个字段的意思
1 name,sex,age,birth,born_addr,major,entrance_time,school #字段 2 egon,male,18,1999,山东,计算机系,2017,oldboy #记录
数据库(DataBase,简称DB)即存放数据的仓库
数据库管理系统(DataBase Management System 简称DBMS)
数据库管理系统有MySQL、Oracle、SQLite、Access、MS SQL Server等,应用场景不同,如mysql主要用于大型门户,例如搜狗、新浪等,oracle主要用于银行、铁路、飞机场等。sql server是微软公司的产品,主要应用于大中型企业,如联想、方正等。
数据库服务器、数据管理系统、数据库、表与记录的关系
数据库服务器:一台计算机(对内存要求比较高)
数据库管理系统:如mysql
数据库:oldboy_stu,就是一个文件夹
表:student,scholl,class_list
记录:1 刘海龙 324245234 22
数据库管理技术的发展历程
略
mysql介绍
关系型数据库,是指采用了关系模型来组织数据的数据库。可以理解成二维的excel表格,是一一对应关系比如MySQL;
非关系型数据库,是指采用了没有特定关系模型来组织数据的数据库。可以理解成一对多的数据关系,比如MongoDB;
关系型数据库如:Mysql ,Oracle, sql server , db2 , sqlite
非关系型数据库如:redis , mongodb
sql语句
sql规范:
<1> 在数据库系统中,SQL语句不区分大小写(建议用大写) 。但字符串常量区分大小写。建议命令大写,表名库名小写;
<2> SQL语句可单行或多行书写,以“;”结尾。关键词不能跨多行或简写。
<3> 用空格和缩进来提高语句的可读性。子句通常位于独立行,便于编辑,提高可读性。
<4> 注释:单行注释:--
多行注释:/*......*/
<5>sql语句可以折行操作
<6> DDL,DML和DCL
- DDL语句:数据库定义语言,库、表、视图、索引、存储过程,包含create DROP ALTER语句
- DML语句:数据库操纵语言,包含INSERT,DELETE,UPDATE,SELECT
- DCL语句:数据库控制语言。包含GRANT,REVOKE等
数据库命名规则: 首字符是字母,其余部分可以是字母、数字、下划线、@、$
不能是关键字,如create database create
最长128位 不能是纯数字
#号代表注释
数据库的操作:
CREATE DATABASE database_name; ---创建数据库
DROP DATABASE database_name; ---删除某一个数据库
ALTER DATABASE database_name; ---修改数据库
SHOW DATABASES; ---查看所有的数据库
SHOW CREATE DATABASE database_name; ---查看创建数据库信息
USE database_name; ---使用某个数据库(注意:进入到某个数据库后没办法再退回之前状态,但可以通过use进行切换)
SELECT DATABASE(); ---查看当前使用的数据库
数据表的操作:
---创建一张表
CREATE TABLE table_name(
字段名 字段数据类型 [约束] ,
字段名 字段数据类型 [约束] ,
字段名 字段数据类型 [约束] ,
...
字段名 字段数据类型 [约束] ,
)
约束:
主键(primary key):非空且唯一
not null:非空约束
unique:唯一约束
---修改表
增加列(字段)
ALTER TABLE table_name ADD [column] 列名 类型 [完整性约束条件] [first | after 字段名];
修改一列类型
ALTER TABLE table_name MODIFY 列名 类型 [完整性约束条件][first|after 字段名];
修改列名
ALTER TABLE table_name CHANGE [column] 列名 新列名 类型 [完整性约束条件][first|after 字段名];
删除一列
ALTER TABLE table_name DROP [column] 列名;
修改表名
RENAME TABLE old_table_name to new_table_name;
修该表所用的字符集
ALTER TABLE table_name CHARACTER SET utf8; 或者 ALTER TABLE table_name CHARSET utf8;
---查看表
DESC table_name;
SHOW TABLES;
SHOW CREATE TABLE table_name;
---删除表
DROP TABLE table_name
python--MySql