MySQL

认识MySQL

MySQL是什么?

MySQL是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。

为什么要学Mysql

MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性

MySQL是开源的,免费

MySQL支持大型的数据库。可以处理拥有上千万条记录的大型数据库。

MySQL使用标准的SQL数据语言形式。

MySQL可以允许于多个系统上,并且支持多种语言。这些编程语言包括C、C++、Python、Java、PHP等(也就是说编程语言离不开数据库,学好MySQL是必须的!!!)。

数据库

什么是数据库?

数据库就是用来存储和管理数据的仓库!

理解数据库

RDBMS(关系数据库管理系统) = 管理员(manager)+数据库(database)

database = N个table

table:

  • 表结构:定义表的列名和列类型!
  • 表记录:一行一行的记录!

数据库有关术语

数据库: 数据库是一些关联表的集合。.

数据表: 表是数据的矩阵。在一个数据库中的表看起来像一个简单的电子表格。

列: 一列(数据元素) 包含了相同的数据, 例如邮政编码的数据。

行:一行(=元组,或记录)是一组相关的数据,例如一条用户订阅的数据。

应用程序与数据库

安装MySQL数据库

安装MySQL

安装文件存放路径:不能有中文和空格!

校验是否安装成功:

右击计算机~管理~服务~

打开cmd~执行代码mysql  -hlocalhost  -uroot  -p  ~回车输入密码

基本命令

启动和关闭mysql服务器

(除此之外有种非命令行进行启动关闭,可自己尝试搜索)

l  启动:net start mysql;

l  关闭:net stop mysql;

客户端登录退出mysql

l  登录:mysql –hlocalhost –uroot –p

  • -h:后面给出的localhost是服务器主机名,它是可以省略的
  • -u:后面的root是用户名,这里使用的是超级管理员root;
  • -p:后面的123是密码,这是在安装MySQL时就已经指定的密码;

l  退出:quit或exit;

SQL语句

什么是SQL?

SQL(Structured Query Language)是“结构化查询语言”

语法要求

l      SQL语句可以单行或多行书写,以分号结尾;

l  可以用空格和缩进来来增强语句的可读性;

l  关键字不区别大小写,建议使用大写

SQL语法要求

l  DDL(Data Definition Language):数据定义语言,用来定义数据库对象:库、表、列等;

l  DML(Data Manipulation Language):数据操作语言,用来定义数据库记录(数据);

l  DCL(Data Control Language):数据控制语言,用来定义访问权限和安全级别;

l  DQL(Data Query Language):数据查询语言,用来查询记录(数据)。

数据类型

MySQL中数据类型主要应用在列上。

常用类型:

l  int:整型

l  double:浮点型,例如double(5,2)表示最多5位,其中必须有2位小数,即最大值为999.99;

l  decimal:泛型型,在表单钱方面使用该类型,因为不会出现精度缺失问题;

l  char:固定长度字符串类型;

l  varchar:可变长度字符串类型;

l  text:字符串类型;

l  blob:字节类型;

l  date:日期类型,格式为:yyyy-MM-dd;

l  time:时间类型,格式为:hh:mm:ss

l  timestamp:时间戳类型;

DDL
基本操作

l  查看所有数据库名称:SHOW DATABASES; 

l  切换数据库:USE mydb1,切换到mydb1数据库

l  创建数据库:CREATE DATABASE [IF NOT EXISTS] mydb1;

创建数据库,例如:CREATE DATABASE mydb1,创建一个名为mydb1的数据库。如果这个数据已经存在,那么会报错。例如CREATE DATABASE
IF NOT EXISTS mydb1,在名为mydb1的数据库不存在时创建该库,这样可以避免报错。

l  删除数据库:DROP DATABASE [IF EXISTS] mydb1;

删除数据库,例如:DROP DATABASE mydb1,删除名为mydb1的数据库。如果这个数据库不存在,那么会报错。DROP DATABASE IF
EXISTS mydb1,就算mydb1不存在,也不会的报错。

l  修改数据库编码:ALTER DATABASE mydb1 CHARACTER SET utf8

修改数据库mydb1的编码为utf8。注意,在MySQL中所有的UTF-8编码都不能使用中间的“-”,即UTF-8要书写为UTF8。

表操作


创建表:

CREATE TABLE 表名(

列名 列类型,

列名 列类型,

......

);


查看当前数据库中所有表名称:SHOW TABLES;

 


查看指定表的创建语句:SHOW
CREATE TABLE emp,查看emp表的创建语句;


查看表结构:DESC
emp,查看emp表结构;


删除表:DROP
TABLE emp,删除emp表;


修改表:

  1. 修改之添加列:给stu表添加classname列:

ALTER TABLE stu ADD (classname varchar(100));

  1. 修改之修改列类型:修改stu表的gender列类型为CHAR(2):

ALTER TABLE stu MODIFY gender CHAR(2);

  1. 修改之修改列名:修改stu表的gender列名为sex:

ALTER TABLE stu change gender sex CHAR(2);

  1. 修改之删除列:删除stu表的classname列:

ALTER TABLE stu DROP classname;

  1. 修改之修改表名称:修改stu表名称为student:

ALTER TABLE stu RENAME TO student;

DML

插入数据

(注意:所有字符串数据必须使用单引用!)

INSERT INTO 表名(列名1,列名2, …) VALUES(值1,
值2)

修改数据

语法:

UPDATE 表名 SET 列名1=值1, … 列名n=值n [WHERE 条件]

删除数据

DELETE FROM 表名 [WHERE 条件]

最新文章

  1. 如何配置远程mysql服务器
  2. UNET学习笔记2 - 高级API(HLAPI)
  3. php对xml文件进行CURD操作
  4. oracle 存储过程中调用存储过程
  5. IOS第八天(1:UITableViewController团购,数据转模型,xib显示数据)
  6. avalon实现一个简单的带增删改查的成绩单
  7. jquery获取节点的时候获取包含自己在内的HTML标签
  8. [置顶] css 背景透明,文字不透明,alpha滤镜,opacity,position:relative;
  9. Swift 基本数据类型
  10. php in_array语法
  11. Codeforces Round#403 (Div. 1)
  12. 到底什么是集群&分布式
  13. js dictionary
  14. Shell文本操作-5
  15. 解题(GeLeiMa -生成格雷码)
  16. 032 HDFS中高可用性HA的讲解
  17. FetchType.LAZY和FetchType.EAGER什么区别
  18. 线特征---LSD and LBD程序运行(一)
  19. SSM整合(1): spring 与 springmvc 整合
  20. BZOJ3787:Gty的文艺妹子序列(分块,树状数组)

热门文章

  1. Java【第一课 java基本结构】
  2. MST Unification CodeForces - 1108F
  3. sqli-labs less-11 --> less-12
  4. Python静态方法、类方法、属性方法
  5. ES6实现图片切换特效
  6. xmind修改默认配置
  7. 转载:openmax bellagio
  8. SmartSVN:File has inconsistent newlines
  9. Appium appium 通过 adb 无线连接 Android 真机
  10. 在vue中使用elementUI饿了么框架使用el-tabs,切换Tab如何实现实时加载,以及el-table表格使用总结