Java后台之路(01)-MySql

来源:互联网 发布:unity3d中文版软件 编辑:程序博客网 时间:2024/06/09 15:12

转载自:

android_cr的博客:

http://blog.csdn.net/weixin_36244867/article/details/72866833

DBMS

DBMS数据库管理系统的简称,我们常见的DBMS由以下几种,并且它们各自的优缺点如下:

Oracle

Oracle是一种关系型数据库管理系统。它的特点是:运行稳定、功能齐全、性能优异;主要应用在大型的企业数据库领域。

DB2

DB2由IBM公司研发。它的特点是:具有较好的可伸缩性;主要应用于大型应用系统,可支持从大型机到单用户环境。

SQL Server

SQL Server由Microsoft研发。它的特点是:界面友好、操作简单;主要应用于电子商务,企业的ERP,进销存等软件

MySQL

MySQL属于瑞典MySQL AB的产品。MySQL所使用的SQL 语言是用于访问数据库的最常用标准化语言;它的特点是:体积小、速度快、成本低;主要于中小型应用系统。

一般企业用的MySQL比较多,成本低,所以我们就来学习MySQL。

安装教程自行百度吧。


SQL简介

sql是数据库语言标准,它具有以下的特点:

  • 简单易学,具有很强的操作性;
  • 绝大多数重要的数据库管理系统均支持SQL;
  • 高度非过程化;用SQL操作数据库时大部分的工作由DBMS自动完成。

sql的分类由以下几种:

  • DDL 
    数据定义语言,用来操作数据库/表/列,create alter drop;
  • DML 
    数据操作语言,用来操作数据库表的数据,insert update delete;
  • DCL 
    数据控制语言,用来操作访问权限和操作级别,grant deny;
  • DQL 
    数据查询语言,用来查询数据,select;

DDL和DML的区别在于DDL操作的是数据库或者表或者列,而DML操作的具体的数据,相对而言DDL级别更高,我们来一次学习一下。


DDL数据定义语言

它的代表语法:create alter drop。

1. 对数据库操作

// 创建数据库create database dbName;// 创建数据库并指定字符集create database dbName character set utf8;// 查询数据库show create database dbName;// 查询所有数据库show databases;// 删除数据库drop database dbName;// 修改数据库alter database dbName character set gbk;// 切换到数据库use dbName;// 查看当前使用的数据库select database();
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

2. 对表操作

//创建表格式create table tableName(    字段名称1 类型,    字段名称2 类型,    字段名称3 类型,    字段名称4 类型,    字段名称5 类型);//创建一个学生表create table student_info(    id int,    user_name varchar(10),    age int,    birthday date);// 显示当前数据库中所有表show tables;// 修改表的名字rename table oldTable to newTable;// 删除表drop table tableName;// 查询表字段信息describe tableName;desc tableName;          //简写// 修改表的字符集alter table tableName character set gbk;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32

3. 对列操作

// 为表增加列,为表增加一个类型为int的列sex;alter table student_info add column sex int;alter table student_info add sex int;   //简写// 修改表的列名,oldName改为newNamealter table student_info change oldName newName varchar(20);// 删除列,删除列sexalter table student_info drop sex;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

DML数据操作语言

它的代表语法:insert update delete。

1. 插入操作:insert

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

要注意这几点:

  • 列名与列值的类型、个数、顺序要一一对应;
  • 列值不要超出列定义的长度;
  • 如果插入空值,请使用null;
  • 插入的日期和字符需用引号括起来,例如:’sun’、’2016-09-04’;

例子:

// 插入一条数据,id,student_name值确定insert into student(id,student_name) values(1, '戚继光');//插入多条数据insert into student(id,student_name) values(2, '戚薇'), (3, '戚继光');
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

2. 修改操作:update

UPDATE 表名 SET 列名1=列值1,列名2=列值2 WHERE 列名=值;

例子:

// 将student_name的值‘戚继光’改为‘英雄’update student set student_name='英雄' where student_name='戚继光';// 将列birthday所有的值都改为'1992-08-05'update student set birthday='1992-08-05';
  • 1
  • 2
  • 3
  • 4
  • 5

3. 删除操作:delete

// 删除某一条数据delete from tableName where id=1;// 删除表中的所有数据但表还存在,可以找回数据delete from tableName;// 删除表中所有数据,数据不可找回,速度比deletetruncate table tableName;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

DCL数据控制语言

DCL用来定义访问权限和安全级别。

// 创建用户语法create user 用户名@IP地址 identified by 密码;// 创建一个'qdl'用户 密码为'123456'create user qdl@localhost identified by '123456';// 创建新用户后需要更新权限表flush privileges;// 给用户授权语法grant 权限1,权限2...权限n on 数据库名.* to 用户名@ip地址 identified by 密码;// 将所有权限授予用户grant all on 数据库名.* to 用户名@ip地址 identified by 密码;// 给用户qdl添加数据库mydatabase的所有权限grant all on mydatabase.* to qdl@localhost identified by '123456';// 撤销权限revoke 权限1,权限2,...权限n on 数据库名.* from 用户名@ip地址;// 撤销用户qdl的所有权限revoke all on mydatabase.*  from 用户名@ip地址;// 查询用户权限show grants for qdl@localhost;// 删除用户drop user qdl@localhost;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29

DQL数据查询语言

由于DQL的重要性,我们应该另起一篇来探讨。

原创粉丝点击