首页 > 代码库 > mysql相关知识

mysql相关知识

1.开启与关闭mysql服务:

在运行中输入 services.msc 查看mysql是否开启

在命令行中通过命令来开启和关闭数据库

开启 net start mysql

关闭 net stop mysql

2.Mysql数据库root密码重置

1) 停止mysql服务器 运行输入services.msc 停止mysql服务

2) cmd下 输入 mysqld --skip-grant-tables 启动服务器 光标不动 (不要关闭该窗口)

3) 新打开cmd 输入mysql -u root -p 不需要密码

use mysql;

update user set password=password(‘abc‘) WHERE User=‘root‘;

4) 关闭两个cmd窗口 在任务管理器结束mysqld 进程

5) 在服务管理页面 重启mysql 服务

密码修改完成

 

3.配置

1) 配置mysql 默认字符集

默认latin1 等价于 ISO-8859-1 改为 utf8

2) Include Bin Directory in Window Path mysql/bin 目录配置环境变量path ---- 勾选

3) 输入超级管理root 密码

 

4.查看mysql服务

 在运行中输入   services.msc

在使用mysql之前,要确保mysql服务开启.

在服务器可以通过右键属性,设置服务手动开启,这样这个服务就不会跟随电脑开机启动。

可以在命令行上通过命令来开启与关闭服务器

开启  net start mysql

关闭  net stop mysql

 

5.操作mysql数据库

  1.mysql默认的客户端

  默认的客户端连接的是 localhost   3306这个数据库服务器.

  2.在命令行下操作

  1. mysql -u root -p 回车

  输入密码  root

  这种方式,默认连接的也是localhost  3306这个数据库服务器

  -u 代表用户

  -p 代表

  2. mysql -u root -h localhost -P 3306 -p

  输入密码 root

  -h 代表的是服务器的主机地址

  -P 代表的是端口号

 

创建数据库

 

1.使用默认的字符集与校对

 

create database 数据库名;

 

2.可以指定数据库字符

 

create database 数据库名  CHARACTER  set gbk;

 

3.可以指定数据库字符与校对

 

create database 数据库名 character set 编码 COLLATE 校对

 

 

查看数据库

 

查看当前数据库服务器下所有数据库

 

show databases;

 

查看创建数据库的语句

 

show create database 数据库名;

 

 

修改数据库

 

修改数据库操作我们很少使用,了解一下语法就可以。

 

修改数据库的编码集

 

alter database 数据库名称  character set 编码 collate 校对

 

删除数据库

 

删除数据库

 

drop database 数据库名

 

其它关于库的操作

 

1.切换数据库

 

use 数据库名称

 

2.查看当前所使用的事数据库

 

select database();

关于mysql中的数据类型:

charvarchar区别?

char是一个定长字符串.指定长度不会随着内容的不足而改变

varchar是一个可变长度的字符串,它根据信息自动改变长度.(只在字符串长度小于指定长度情况下

创建表与约束

1.创建表

1.创建表---使用默认的字符集与校对

create table 表名(

字段1 类型,

字段2 类型,

.....

);

 

2.创建表--指定字符集与校对

create table 表名(

字段1 类型,

字段2 类型,

.....

) character set 字符集  collate 校对;

表名后面的内容需要使用()”括起来,里面的内容是表结构,由列名和列类型组成,列名与列类型之间用空格隔开,每一列之间用逗号隔开,最后一列后面不需要加逗号,语句结束后需要加“;”。

2.约束

它是用于限定表中字段。

我们在mysql课程中会介绍5种约束(注意:数据库中一共有六种约束,而mysql只支持五种)

主键约束

主键是用于标识当前记录的字段。它的特点是非空,唯一。

在开发中一般情况下主键是不具备任何意义,只是用于标识当前记录。

创建主键:

1.在创建表时,在字段后面加上  primary key.

create table tablename(

id int primary key,

.......

)

2.也可以表创建的最后来指定主键create table tablename(

id int

.......

primary key(id)

)

3.删除主键:alter table tablename drop primary key ;

唯一约束

某一列的值不为重复可以使用唯一约束.unique  

非空约束

not null

默认值约束

default

外键约束

 

自动增长  auto_increment

扩展:

mysql : auto_increment 自动增长

sqlserver: identity(1,1)

oracle:sequence序列

表操作-查看修改删除表

1. 查看表

查看表结构

desc 表名;

查看当前数据库下所有表

show tables;

.查看表的字符编码集

show create table 表名;

2. 修改表

修改表的结构语法格式:alter table 表名 关键字 .;

关键字有以下几个:

1.add----添加列操作   alter table 表名  add 列名 类型;

2.modify--修改列的类型 alter table 表名  modify 列名  类型;

3.drop --删除列  alter table 表名  drop 列名.

4.change--修改列名称  alter table 表名 change 旧列名  新列名  类型;

 

修改表的名称

rename table 旧表名 to 新表名;

 

修改表的字符编码集

alter table 表名 character set 字符集;

 

 

 

 

 

记录操作-insert操作

插入所有列值

insert into 表名(列名1,列名2, ...) values(列值1, 列值2, ...);

表名后面是当前表中所有字段名称

插入部分列值

: insert into 表名(列名1,列名2) values(列值1, 列值2);

表名后面是当前表中部分字段名称

不指定列名

: insert into 表名 values(列值1, 列值2, ...);

l 没有给出要插入的列,那么表示插入所有列;

l 值的个数必须是该表的列的个数;

l 值的顺序,必须与表创建时给出的列的顺序相同。

 

插入操作注意事项

l 插入的数据应与字段的数据类型相同

l 数据的大小应该在列的长度范围内

values中列出的数据位置必须与被加入的列的排列位置相对应。

l .除了数值类型外,其它的字段类型的值必须使用引号引起。

如果要插入空值,可以不写字段,或者插入 null.

注意:对于自动增长的列在操作时,直接插入null值即可.

 

charvarchar区别?

char是一个定长字符串.指定长度不会随着内容的不足而改变

varchar是一个可变长度的字符串,它根据信息自动改变长度.(只在字符串长度小于指定长度情况下)

 

具体见电脑中mysql笔记

mysql相关知识