MySql数据库基础

一、MySql常用指令

1、创建数据库

mysql> create DATABASE 数据库名;

2、删除数据库

mysql> drop database 数据库名;

3、选择数据库

mysql> use 数据库名;

4、创建数据表

create table table_name (column_name column_type);

示例:

CREATE TABLE IF NOT EXISTS students
(
   id   	INT   				UNSIGNED   AUTO_INCREMENT,  //AUTO_INCREMENT定义列为自增的属性,一般用于主键,数值会自动加1。
   name		VARCHAR(100) 		NOT NULL,
   age	    VARCHAR(40)         NOT NULL,		//not null : 在操作数据库时如果输入该字段的数据为NULL ,就会报错。
   tel		char(11)			NOT NULL,		
   PRIMARY KEY (id)		//PRIMARY KEY关键字用于定义列为主键。 可以使用多列来定义主键,列间以逗号分隔。
)ENGINE=InnoDB DEFAULT CHARSET=utf8;//ENGINE 设置存储引擎,CHARSET 设置编码。

5、删除数据表

mysql> DROP TABLE 数据表名

6、往数据表添加数据(插入数据)

INSERT INTO table_name ( field1, field2,...fieldN )
                       VALUES
                       ( value1, value2,...valueN );

插入完整的行 ,示例:

insert into students
(id,name,age,tel)
values
(1,"mike",20,"15623552356");

7、检索数据

select column_name,column_name
from table_name
[where Clause]
[LIMIT N][ OFFSET M]

例1. 检索所有列, 输入select * from students;

得到刚刚创建的表:
在这里插入图片描述
例2. 检索单个列,输入 select name from students;
得到如下:
在这里插入图片描述
例3. 检索多个列,输入 select name,age from students;
得到:
在这里插入图片描述
例4. 限制结果
1、limit (限制数据显示的总行数)

select * from students limit 5;

这个语句只会显示整个表的前5行。

select * from students limit 3,6;

该语句从表的第4行开始显示,总共显示6行
2、offset (规定数据开始显示的偏移量)

select * from students offset 2;

执行上述语句会从第3行开始显示

8、where子句 (条件判断)

select field1, field2,...fieldN FROM table_name1, table_name2...
[WHERE condition1 [AND [OR]] condition2.....
  • where通常用于delect和update命令中,用于筛选

  • 可以使用 AND 或者 OR 指定一个或多个条件。

    select  *  from students where id = 1;
    

将显示id为1的那一行数据

下表是mysql常用比较符
在这里插入图片描述
9、用update更新数据

 UPDATE table_name SET field1=new-value1, field2=new-value2
[WHERE Clause]

例1. 修改单个数据

update students
 set tel = "110"
 where name = "mike";

这个指令会使mike的电话号码更改为110。
例2. 修改所有行的数据

update students
set tel = "110";

这个指令将所有人的电话都更改为110。

10、用delete删除数据

DELETE FROM table_name [WHERE Clause]

例1. 删除id为3的一行

delete from students
where id = 3;

11、alter命令
当需要修改数据表名或者修改数据表字段时,就需要使用到MySQL ALTER命令。
(1).添加表字段

mysql> alter table students add grade INT;

该语句将为表新增一个grade的字段
(2) .删除表字段

mysql> alter table students drop grade;

该语句将表中的grade及其数据删除。

(3)修改字段名

语句 alter table students change grade gradeee int; 将字段grade改名为gradeee,并将数据类型设置为int

(4) 修改字段数据类型

语句 alter table students modify grade varchar(10); 将grade修改为varchar类型

12、索引
      给数据库建立正确合理的索引,是mysql优化的一个重要手段。使用索引就像查字典一样,不断的缩小想要获得数据的范围来筛选出最终想要的结果。实际上,索引也是一张表,该表保存了主键与索引字段,并指向实体表的记录。
      虽然索引大大提高了查询速度,同时却会降低更新表的速度,INSERT 与 UPDATE 语句在拥有索引的表中执行会花费更多的时间,而SELECT 语句却会执行得更快。这是因为,在进行插入或更新时,数据库也需要插入或更新索引值。

    索引的类型:

    1、UNIQUE(唯一索引):不可以出现相同的值,可以有NULL值
    2、INDEX(普通索引):允许出现相同的索引内容
    3、PROMARY KEY(主键索引):不允许出现相同的值
    4、fulltext index(全文索引):可以针对值中的某个单词,但效率不太好
    5、组合索引:实质上是将多个字段建到一个索引里,列值的组合必须唯一

(1) 使用ALTER TABLE语句创建索引
ALTER(空格)TABLE(空格)表名(空格)ADD(空格)索引类型 (空格)索引名(字段名)
如:

语句 alter table mytable add index normal_index(id);可以为表mytable创建一个名为normal_index的普通索引,并规定以表中字段id为索引

(2) 使用CREATE INDEX语句对表添加索引
如:
语句
语句 create unique index unique_index on mytable(id)可以为表mytable添加一个名为unique_index的索引

(3) 删除索引
drop index 索引名 on 表名 ;
如:语句 drop index normal_index on mytable;可以将上面的normal_index删除

(4) 查看索引
语句 show index from mytable; 可以查看mytable中的索引信息

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值