MySQL数据库
1.数据库简介:
(1)概念:
-
按照一定的数据结构来存储和管理数据的仓库
2.计算机主要把数据放在磁盘和内存中
(2)分类:
- 关系型数据库(SQL) 例如:MySQL(免费开源),oracle
存储方式固定,安全
2.非关系型数据库(NoSQL(Not Only SQL))
存储方式比较灵活,存储数据的效率比较高, 不太安全
2.MySQL基本结构:
最流行的关系型数据库管理系统之一,目前属于甲骨文(Oracle)公司。
(1)概念与特点
关系型数据库管理系统:采用关系模型来组织管理数据的数据库系统
把数据保存在不同的表中,而不是将数据放在一个大仓库中
可以运行于多个系统上,并且支持多种编程语言,包括C、C++、Python、Java、Perl、PHP、Ruby等
(2)MySQL组织数据的基本格式:
(3)MySQL表中的数据:
3.MySQL库级和表级操作:
(1)注意事项:
大小写:不严格区分大小写,默认大写为程序代码,小写为程序员写的代码
语句结束符:每个语句都以;或者\g结束
类型:强制数据类型,任何数据都有自己的数据类型
逗号:创建表的时候最后一行不需要逗号
(2)进入与退出:
1.mysql –uusername -ppassword (显示密码) 或者 mysql -uroot -p (不显示密码)
解释: mysql(调用mysql程序) -u(mysql里创建的用户) -p(用户的密码)
2.mysql> exit 或者\q
(3)库级操作语句:
显示所有的库:show databases;
创建库:create database [if not exists] db_name;
---------------重复创建会报错, 可以加上if not exists
删除库:drop database [if exists] db_name;
--------------如果不知道数据库是否存在,记得加if exists
进入数据库:use db_name;
显示当前的数据库: select database()
(4)表级操作语句:
显示所有的表:show tables;
创建表:create table [if not exists] tb_name (create definition…);
-----------------重复创建会报错, 可以加上if not exists
显示创建表的信息:(1)show create table tb_name;
--------------(2)describe tb_name;
删除表:drop table tb_name;
-------------if exists tb_name
4.MySQL表中数据的操作:
(1)插入数据:
指定字段插入: insert into tb_name(field_name) values (field_values);
全字段插入:insert into tb_name values(all_values); #values后面的s可加可不加(数据特别多的时候加s)。
多行插入: (1)insert into tb_name(field_name) values (value_1), (value_2), …;
------------(2)insert into tb_name set field_name = value,field_name2 = value;
(2)查询数据:
指定字段查询:select field_names from tb_name;
全字段查询: select * from tb_name;
带条件的查询: select field_names from tb_name where conditions;
(3)修改数据:
修改所有数据:update tb_name set field_1=value_1
修改多个: update tb_name set field_1=value_1, field_2=value_2 …;
修改满足条件的数据: update tb_name set field_1=value_1 where conditions;
-------------------注意:一定要写where条件,不然会修改表中全部数据
(4)删除数据:
删除表中所有数据:delete from tb_name;
删除表中满足条件的数据: delete from tb_name where conditions;
----------------------注意:一定要写where条件,不然会删除表中全部数据
5.MySQL数据类型
1.数值类型:
2.字符类型:
3.时间日期类型:
例子: