mysql常用命令

mysql常用命令

mysql中的常用概念:
​ 数据库系统中有多个数据库,多个仓库
​ database---->数据库

数据库里面存放数据表: table

表中用于存储数据(记录):
	记录: record-->实体
	字段: field--->字段
  1. 数据库操作 (增删改查); sql

1.1 创建数据库
​ 语法: create database 数据库的名 [字符集设置];
​ create database 数据库的名 charset=utf8;

		备注:
		1. 如果没有设置字符集, 使用的是配置中的默认字符集
			配置文件: mysql的安装目录/my.ini
			在mysql中字符集 utf8 (没有-);

		2. 标准的情况, 所有的库名,表名,列名 都应该加上反引号.
			反引号的作用: 当我们的 库名,表名,列名 是关键字\保留字, 都必须使用反引号引起来, 去除它本身特殊含义


	例子:
		create database test1;
		create database test2 charset=gbk;
		create database `create`;


1.2 查看数据库
	a. 查看一个数据库的建库语句
		show create database `数据库的名`;

    b. 查看数据库
    	语法: show databases [like '_/%'];
    	show databases; //查看所有数据库;

    	_: 代表任意字符出现一次
    	%: 代表仍意字符出现仍意次数

    	例子:
    		show databases like '%2';//以2结尾
    		show databases like '%es%';//包含es

1.3 删除数据库
	语法: drop database 数据库名;


1.4 修改数据库选项
	语法: alter database 数据库名 字符集设置;
	alter database test2 charset=utf8;

1.5 补充两个语法 了解
	if exists  , 表示如果存在,  删除一个 库, 表 时候使用

​ drop database if exists test2;

	if not exists, 表示如果不存在, 创建库, 表 的时候 使用
	create database if not exists 数据库名;
  1. 数据表(table)操作

2.1 创建表
​ 语法:
​ create table [if not exists] 表名(
​ 字段的定义
​ ) [表引擎选择] [表的字符集选择];

	例子:
		创建一个student表
		create table student(
				username varchar(10),
				sex varchar(1),
				age int
			);

		备注: 
			1. 每个字段 必须定义类型, 强类型 
			2. 创建表的时候需要指定数据库, 在哪个数据库中创建
				方法:
					a, 表名前面加上库名 , 数据库名.表名
					create table itsource.student(
						username varchar(10),
						sex varchar(1),
						age int
					);

					b. 使用 use 数据库名; ===> 代表切换到指定数据库中
						直接创建表,代表就是在当前库中创建
						use itsource;
						create table student1(
							username varchar(10),
							sex varchar(1),
							age int
						);

		    3. 字符集设置 
		    	如果没有设置, 使用默认配置文件中对库的配置的字符集.
		    	create table 表名(字段定义) charset=utf8;

		    	例子:
		    	create table student2(
							username varchar(10),
							sex varchar(1),
							age int
						) charset=gbk;

		    4. 表引擎设置
		    	如果没有设置, 默认为配置文件决定, INNODB
		    	语法:
		    	create table 表名(字段定义) engine=innodb/myisam;

		    	常见的引擎:
		    		innodb: 安全性高,支持高级功能(事务,外键,恢复性强);

		    		myisam: 查询速度快, 安全性低, 不支持高级功能

		    	例子:
		    	create table student3(
							username varchar(10),
							sex varchar(1),
							age int
						) engine=myisam;

		    	create table student4(
							username varchar(10),
							sex varchar(1),
							age int
						) engine=innodb;


数据存储的目录, 在配置文件中指定:datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/"
    .frm 结构存储文件
    .myd 数据存储文件
    .myi 索引存储文件


2.2 查看表

	a. 查看建表的语句
		show create table 表名;

		show create table student;

	b. 查看表, 有哪些表
		语法:
			show tables [like '%/_'];

		例子:
			show tables;
			show tables like "%2";

    c. 查看表的字段(结构)
    	describe 表名;
    	desc 表名;

    	# 了解
    	查看一个表的字段的完整属性
    	show full fields from 表名;

    	例子:
    		desc student;
    		describe student;
    		show full fields from student;

2.3 修改表
	a. 修改表名
		语法: rename table oldname to newname;

		例子:
			rename table student3 to student4;

	b. 修改表的选项 (引擎, 字符集)
		语法: alter table 表名 [引擎设置] [字符集设置];

		例子:
			alter table student4 engine=innodb charset=gbk;

    c. 修改字段的定义
    	1. 添加一个字段
    		alter table 表名 add [column] 字段名 字段属性  [first/after 位置];

    		alter table student4 add height int after sex;

    	2. 删除一个字段
    		alter table 表名 drop [column] 字段名;

    		alter table student4 drop height;

    	3. 修改某个字段
    		只修改属性
    			alter table 表名 modify [column] 字段名 新属性;

    			alter table student4 modify age varchar(20);
    		同时修改字段名和属性
    			alter table 表名 change [column] 旧字段名 新字段名 新属性;

    			alter table student4 change age newage  int;

    	4 技巧 了解 百度
    		? alter table 

2.4 删除表	

	语法:
		drop table 表名;

	例子:
		drop table student4;	
  1. 记录的操作 (重点中的重点)
    use 数据库名;

3.1 添加记录
​ 语法:
​ insert into 数据库名.表名 (字段1,字段2…) values(值1,值2…);

	如果所有字段都添加值,可以不写字段列表,但是所有的值必须写完:
	insert into 数据库名.表名 values(值1,值2....);

	掌握: 一次性条件多条记录
	insert into 数据库名.表名 (字段1,字段2....) values(值1,值2....),(值1,值2....),(值1,值2....);




	备注:
		1. 字符集问题, 客户端编码问题
			解决方式: 发送sql:  
				set names gbk;====>告知服务器我这边客户端的编码是gbk, 自己转成utf8;

	例子:
		添加学生
		insert into student4 (username,sex,newage) values("张飞","男",280);
		insert into student4 (username) values("关羽");
		insert into student4 values("刘备","男",280);

		一次条件多条记录
		insert into student4(username,sex,newage) values ("小乔","女",15),("大乔","女",16);


3.2 查看记录--->使用最多
	a. 查看所有的数据
		select * from 表名;

	b. 条件查询
		select * from 表名 where 条件语句;

		例如:
		select * from student4 where sex="男";
		select * from student4 where newage>20 and newage<290;


3.3 修改记录
	语法:
		update 表名 set 字段名1=值,字段名2=值 where 条件语句;

		备注:
		1. 更新的时候一定要加条件,如果没有就是更新所有数据
		update student4 set newage=18 where username="大乔";

3.4 删除记录
	语法:
		delete from 表名 where 条件语句;

		备注:
		1. 删除的时候,一定要添加条件,如果没有条件就删除所有的数据
		delete from student4 where username="刘备";

3.5 备份和恢复 了解
	
	备份:
    	在mysql安装目录下的bin目录中有个命令工具: mysqldump.exe 导出数据的命令工具
    	mysqldump.exe -h主机 -P端口 -u用户 -p密码 数据库名 > 文件路径/文件名.sql

    	路径\mysqldump.exe -h127.0.0.1 -P3306 -uroot -proot itsource > D:/itsource.sql

    恢复:
    	使用sql命令, 连接和认证成功
    	source 文件路径/文件名.sql;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值