MySQL总纲1

数据库是按照一定格式存储数据的一些文件的组合。

   实际上是一堆文件,这些文件存储了具有特定格式的数据。

数据库管理系统 DataBaseManagement 简称DBMS。

管理数据库中的数据,可以对其进行增删改查。

SQL是结构化查询语言  定义了操作所有关系型数据库的规则                      DBMS–执行–SQL–操作–DB

常用命令  退出MySQL  exit  查看有哪些数据库  show databases;  注意以分 结尾,英文状态

                   使用时某个数据库 use 数据库名;   创建数据库  create database 你想要的名;

                   show tables 展示某个数据库中的表;

数据库最基本的单元是表:table    任何一张表都有行(row)和列(column)

      行被称为数据/记录。     

SQL语句的分类

DDL 数据定义语言 (凡是带有create(新建),drop(删除),alter(修改)的都是DDL)

DDL主要操作的表的结构,不是表中的数据

DML数据操作语言(凡是对表中的数据进行增删改的都是DML)

insert delete update

DQL 数据查询语言(凡是带select关键字的都是查询语言)

DCL数据控制语言  授权(grant) 撤销权限(revoke)

TCL事务控制语言 (包括事务提交commit,事务回滚rollback)

MySQL服务的启动

1手动     2 cmd–services.msc   3  使用管理员打开cmd   net start / stop  mysql    启停命令

登录退出

mysql -uroot -p            exit

还可登录他人    mysql -hip(目标ip地址)-uroot -p连接目标的密码

                         mysql –host=ip –user=root –password=连接目标的密码

SQL语法

SQL语句可以单行或多行书写,以分 结束      不区分大小写

三种注释   单行注释:–(一个空格)注释内容  或  #(不用加空格)注释内容      #是MySQL特有

                 多行注释:/*注释*/

DDL操作数据库

 Retrieve 查询   show databases;查询所有数据库的名称

                         show create database  数据库名称; 查询某个数据库的字符集:查询某个数据库的创建语句

                         查看以my开头的(my后面可有多个字符)数据库    show databases like ‘my%’;

                         查看以my开头的(my后面只有一个字符)数据库    show databases like ‘my_’;

            

Create创建     create database  你想要的名;   为了保险可以  create database if not exists 你想要的名;

还可指定创建   例如创建字符集为gbk的数据库     create database if not exists db4 character set gbk;

Drop  删除     drop database 数据库名称; drop database  if  exists 数据库名;

alter修改       alter database 名 charset gbk;

选择数据库    use  数据库名称;

查看当前是哪个数据库  select database();

 

DDL操作表:CRUD(Create创建  Retrieve 查询  Update修改   Delete删除 )

Retrieve 查询       show tables;查询当前数据库所有表的名称 

                    show table status like ‘student’G  查看表状态   G表示列表信息,后面不用加分

两种方式

                    desc 表名称; 看表的字段信息;desc student id;只看某项

                    show (full)columns from 数据表名; 看表的字段信息;加full之后可看详细信息

                    

                    show create table studentG查看表的结构,可查看创建时的sql语句

                    show tables like ‘my%’; 查看以my开头的(my后面可有多个字符)表

习题

(1)       查看test数据库中所有数据表。

show tables;

(2)       查看当前数据库中Employee数据表的状态。

show table status like ’employee’G

(3)       查看Department数据表所有字段的信息(两种方式)。

desc department; 

show columns from department;

(4)       查看Employee数据表中age字段的信息。

       desc employee age;

(5)       查看Department数据表详细信息(包括权限、注释等)。

show full columns from department;

(6)       查看Departmen数据表的创建语句。

show create table departmentG

                   

               

Create创建     create table 表名(           

                       字段名1  数据类型1,

                       字段名2  数据类型2,

                        …

                        字段名n  数据类型n  

                      );

mysql的数据类型    数值 日期 字符串

数值  如age int        score double(参数1:总长度,参数2:小数点后保留的位数)

日期  如birthday date

字符串 name char(10)存“张三”会用10个字符空间,因为他不会计算  (存储的性能高  浪费空间)

            name varchar(10)存“张三”会用2个字符空间,他会计算张三占几个字符  (存储性能低  节约空间)

Drop  删除 drop table 表名;   drop table if exists 表名;

alter修改        修改表名 alter table 表名 rename to 新表名;.1.2

                 添加一列 alter table 表名 add 列名 数据类型;.6

                 修改数据类型 alter table 表名 modify 列名 新数据类型;.5

                 修改列名和数据类型  alter table 表名 change 列名 新列名 新数据类型;.4

                 删除列   alter table 表名 drop 列名;.9

习题

1、  将数据表department的表名改成depart,并进行查看。

alter table  department rename to depart;

2、  将数据表depart的表名改成department,并进行查看

alter table  depart rename to department;

3、  将数据表department的字符集改成gbk。

alter table department charset = gbk;     show create table department G

4、  将数据表employee的“id”字段的字段名改为“emid”,并查看修改结果。

即使不改类类型 也要写int

alter table employee change id emid    int ;desc employee;

5、  将数据表employee的“name”字段的字段类型改为char(10),并查看修改结果。

alter table employee modify name char(10);   desc employee name;

6、  在数据表employee中新增“sex”字段,字段类型为char(2),放在“name”字段之后,并查看修改结果。

alter table employee add sex char(2)  after name  ; desc  employee;

7、  在数据表employee中修改“did”字段位置,放在第一个字段位置,并查看修改结果。

alter table employee modify did int first;  desc employee;

8、  在数据表employee中新增phone char(11),address varchar(60)两个字段。

alter table employee add(phone char(11),address varchar(60));

9、  在数据表employee中删除“sex”字段,并查看结果

alter table employee drop sex;  desc employee;

10、删除数据表department,并查看结果。

   drop tabledepartment;  show tables;

DDL 数据定义语言 (凡是带有create(新建),drop(删除),alter(修改)的都是DDL)

上面这个更好

DDL操作表:CRUD(Create创建  Retrieve 查询  Update修改   Delete删除 )

DML(对表的数据进行增删改)(增insert删delete改update查select)

添加数据-为所有字段添加信息                            

insert into employee values(1001,1,’张三’,18);

添加数据-为部分字段添加信息

insert into employee (did,emid,name) values(1002,2,’李四’);

添加数据-一次添加多行数据

insert into employee values(1003,4,’李丽’,19),(1002,5,’张强’,20);

查询数据

查询数据-查询表中全部字段

 select * from employee;  (不要用,这样人们不知道查哪些)

查询数据-查询表中部分字段

查部分 select emid,name from employee;

   

查询数据-简单条件查询

 select * from employee where did=1001;

修改数据

update employee set age=20 where name=’张三’;

全部改为19

update employee set age=19;

删除数据

delete from employee where emid =5;

全部删除

delete from employee;

习题

1、  创建mydb数据库,在mydb数据库中创建一张电子杂志订阅表(subscribe)。

create database mydb;

2、电子杂志订阅表中要包含4个字段,分别为编 (id  int)、

订阅邮件的邮箱地址(email  varchar(50))、

用户是否确认订阅 (status  int,使用数字表示,1表示已确认,0表示未确认)、

邮箱确认的验证码(code  varchar(10))。

create table subscribe(

    ->id  int,

    ->email  varchar(50),

    ->status  int comment’使用数字表示,1表示已确认,0表示未确认’,

    ->code  varchar(10)

    -> );

3、为电子杂志订阅表添加5条数据,如表所示

  

id

email

status

code

1

tom123@163.com

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年5月12日
下一篇 2022年5月12日

相关推荐