MySQL笔记


一、mysql使用手册

 1.启动mysql 。 

每次进入mysql安装的bin目录下(cd '路径'),net start mysql 或者讲bin目录添加到电脑环境变量Path中,用管理员身份直接运行 net 即可启动 。

2.进入mysql 。在bin目录下输入:mysql -u root -p ,输入password。

3.修改密码:

ALTER USER 'root'@'localhost' identified by '修改的密码' ;

flush privileges ;  刷新并退出重启mysql服务,即可生效。

 如果没有更改过密码可以在日志找到

如果改过密码的话,建议重装,如果不想重装的话,可以进入无密码模式进行修改。

二、MySQL中的数据类型

1.数值类型。

表1

2.日期类型


表2

3.字符串类型

表3


# 字符型 (长度在5.5之前值字节,5.5之后是字符)

char 开辟指定大小内存,而varchar 即使设定指定长度,如果变量值小于指定长度,长度自动缩减;但超过长度,则插入数据时会报错。text 不需要指定长度,一般用来存储大段的文本.

# 如何选取:  如果值的长度变化比较大,从节省空间的角度来考虑,我们可以使用varcahr,但是在计算长度的过程中会消耗一定的性能,如果值的长度变化不大,例如手机号码,我们就可以char。

三、约束条件

# 约束 (字段名 字段类型  约束)

非空 not null , (Field 'name' doesn't have a default value)

default '' 设置默认值 (寺庙中和尚的性别)  ( age int default 1)

UNIQUE  唯一。 注意: 唯一是可以为空的。

比如:tel设置为unique,但是也可以为空

primary key  主键 (not null + 唯一),一张表只能有一个主键,设置联合主键.

整数类型的可以设置 auto_increment  自增长, 必须是主键.

FOREIGN KEY 外键(表关联中,这个字段在其他表中为主键)。

四、SQL语句

1.增加删除语句

create database studb;

use studb;  // 选择一个数据库

create table stu(id int, name varchar(100),gender varchar(20),age int); // 创建一张表


insert into stu(id,name,gender,age) values (1,'小明','男',12),(2,'小明2','女',15); // 插入

update stu set name = 'xiaohong',age =12  where id = 1; // 更新语句

delete from stu where id = 1;


2.条件查询语句

 select * from 表名;  // 整张表查询 ,

select name, age, ... from person;  //查询name age 属性

 select name,age from person where id = 1; // 根据id进行查询

select name,age form person where id= 3 and name='www'; // id是3 且名字是www

select name,age from person where name = 'cc' or age = 3; 名字='cc' 或者 age = 3

select name,age from person where id in (2,4); // 效率太低,一般不用

select name,age from person where name like '%c%';  // %是通配符 查询出name中带有c的记录

select name,age from person where age > 3; // 把年龄大于3都查出来

select name,age from person where age BETWEEN 2 and 5;  // 查询出[2,5]区间内的数据

order by 字段 [asc/desc]  asc 升序 desc 降序

select * from p2 where id between 2 and 5 order by id desc; //查询出[2,5]区间,按照降序排列。

select*from p2 where id order by id desc, name desc; //查询出[2,5]区间内的数据,先按照id进行降序, 如果年龄一样的话, 按照姓名进行降序

limit begin,count 分页   下标计算从0开始, 查询多少个

select * from persin where name like '%c%' limit 1, 2; // 从第一行记录开始,查询两条

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。