MySQL基础使用命令
2022/8/26 2:24:19
本文主要是介绍MySQL基础使用命令,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
0.MySQL服务的启动和停止
- Windows下:
# 以管理员身份运行命令提示符输入如下命令 # 启动 MySQL 服务命令: net start MySQL服务名 # 停止 MySQL 服务命令: net stop MySQL服务名
1.连接数据库
格式:mysql -h 主机地址 -P 端口号 -u 用户名 -p用户密码
1.连接到本机上的MYSQL。
如果已经配置好环境变量,DOS窗口下键入命令mysql -u root -p
,使用默认主机名localhost,默认端口号3306。回车后提示你输密码.注意用户名前可以有空格也可以没有空格,但是密码前必须没有空格,否则让你重新输入密码.如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是: mysql>
2.连接到远程主机上的MYSQL。
假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。则键入以下命令:
# u与用户名之间可以不用加空格,h与后面的主机地址可以不用加空格 mysql -h110.110.110.110 -u root -pabcd123
3.退出MYSQL命令: exit (回车)
2.增加用户
3.操作数据库
3.1创建数据库
命令:create database <数据库名>
例1:建立一个名为xhkdb的数据库
mysql> create database xhkdb;
例2:创建数据库并分配用户
①CREATE DATABASE 数据库名;
②GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER ON 数据库名.* TO 用户名@localhost IDENTIFIED BY '密码';
③SET PASSWORD FOR '数据库名'@'localhost' = OLD_PASSWORD('密码');
依次执行3个命令完成数据库创建。
注意:中文 “密码”和“数据库”是户自己需要设置的。
3.2显示数据库
命令:show databases;
(注意:最后有个s)
3.3 删除数据库
命令:drop database <数据库名>;
例如:删除名为 xhkdb的数据库
mysql> drop database xhkdb;
例子1:删除一个已经确定存在的数据库
mysql> drop database drop_database;
Query OK, 0 rows affected (0.00 sec)
3.4 连接数据库
命令: use <数据库名>;
使用USE语句为一个特定的当前的数据库做标记,不会阻碍您访问其它数据库中的表。下面的例子可以从db1数据库访问作者表,并从db2数据库访问编辑表:
mysql> USE db1; mysql> SELECT author_name,editor_name FROM author,db2.editor -> WHERE author.editor_id = db2.editor.editor_id;
退出数据库或连接其他数据库直接 use 其他数据库名称
就可以了。
3.5查看当前选择的数据库
mysql> use text Database changed mysql> select database(); +------------+ | database() | +------------+ | text | +------------+ 1 row in set (0.00 sec)
MySQL中SELECT命令类似于其他编程语言里的print或者write,你可以用它来显示一个字符串、数字、数学表达式的结果等等。如何使用MySQL中SELECT命令的特殊功能?
(1). 显示MYSQL的版本
mysql> select version(); +-----------+ | version() | +-----------+ | 8.0.15 | +-----------+ 1 row in set (0.00 sec)
(2). 显示当前时间
mysql> select now(); +---------------------+ | now() | +---------------------+ | 2021-01-30 09:37:30 | +---------------------+ 1 row in set (0.00 sec)
(3). 显示年月日
mysql> select year(current_date); +--------------------+ | year(current_date) | +--------------------+ | 2021 | +--------------------+ 1 row in set (0.00 sec) mysql> select month(current_date); +---------------------+ | month(current_date) | +---------------------+ | 1 | +---------------------+ 1 row in set (0.00 sec) mysql> select dayofmonth(current_date); +--------------------------+ | dayofmonth(current_date) | +--------------------------+ | 30 | +--------------------------+ 1 row in set (0.00 sec)
(4).显示字符串
mysql> select "hello,world"; +-------------+ | hello,world | +-------------+ | hello,world | +-------------+ 1 row in set (0.00 sec)
(5).当计算器用
mysql> select ((4 * 4) / 10 ) + 25; +----------------------+ | ((4 * 4) / 10 ) + 25 | +----------------------+ | 26.6000 | +----------------------+ 1 row in set (0.00 sec)
(6).串接字符串
(7). 查看数据库的创建信息
4.操作表
1.创建表
命令:create table <表名> ( <字段名1> <类型1> [,...<字段名n> <类型n>]);
2.获取表结构
命令: desc 表名;
,或者show columns from 表名;
使用MySQL数据库,根据desc 表名
的结果,我们看到Key那一栏,可能会有4种值,即' ','PRI','UNI','MUL'。这些值的含义是什么呢?
3.删除表
命令:drop table <表名>
4.向表插入数据
5.查询表
- 查询所有行,使用命令:
select <字段1,字段2,...> from < 表名 > where < 表达式 >
# 查看表member中所有数据,*表示所有字段 mysql> select * from member;
- 查询前几行数据
# 查看表member中前2行数据 mysql> select * from member order by id limit 0,2;
- 使用AS关键字给列名取别名
SELECT name AS "姓名",age AS "年龄"from student;
- 使用DISTINCT关键字去除重复行
SELECT DISTINCT name AS "姓名",age AS "年龄" from student;
- 结合where子句过滤查询:where子句紧跟随from子句
SELECT name,age FROM student where age > 23;
6.删除表
命令:delete from 表名 where 表达式
7.修改表中的数据
语法:update 表名 set 字段=新值,… where 条件
# 将member表中id等于2的tel改为18370430889 mysql> update member set tel = '18370430889' where id = 2;
8.增加表字段
命令:alter table 表名 add字段 类型 其他;
- 加索引:
mysql> alter table 表名 add index 索引名 (字段名1[,字段名2 …]);
- 加主关键字的索引:
mysql> alter table 表名 add primary key (字段名);
- 加唯一限制条件的索引:
alter table 表名 add unique 索引名 (字段名);
- 删除某个索引:
alter table 表名 drop index 索引名;
- 增加字段:
ALTER TABLE table_name ADD field_name field_type;
- 修改原字段名称及类型:
ALTER TABLE table_name CHANGE old_field_name new_field_name field_type;
- 修改字段类型:
ALTER TABLE table_name MODIFY colum_name field_type new_type;
- 删除字段:
ALTER TABLE table_name DROP field_name;
9.修改表名
命令:rename table 原表名 to 新表名;
10.查看表的创建信息
使用show create table 表名;
命令。这行命令可以查看到创建表时使用的字符集信息。
11.导入数据
在MySQL客户端下导入SQL文件:
source xxx.sql
12.排序
排序使用order by
子句,其涉及到的两个重要关键字ASC和DESC,分别表示升序和降序。
- 单列排序,不指定ASC或者DESC的其中一个,默认是升序的。
# 例如对年龄降序 SELECT * from student ORDER BY age DESC;
- 多列排序:在对多个列进行排序的时候,排序的第一列有相同的列值,才会对第二列进行排序。
# 例如对姓名,年龄进行排序。姓名相同,按照年龄降序 SELECT * from student ORDER BY name, age DESC;
13.分页
MySQL中使用limit关键字实现分页。格式为LIMIT [位置偏移量,] 行数
,不指定位置偏移量,会从表中的第一条记录开始,第一条记录的位置偏移量是0。
# 前2条记录 SELECT * from student LIMIT 0,2;
5.查看字符集和排序相关
-
查看字符集:
show variables like 'character_%';
-
查看排序:
show variables like 'collation_%';
这篇关于MySQL基础使用命令的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-07MySQL读写分离入门:轻松掌握数据库读写分离技术
- 2024-12-07MySQL读写分离入门教程
- 2024-12-07MySQL分库分表入门详解
- 2024-12-07MySQL分库分表入门指南
- 2024-12-07MySQL慢查询入门:快速掌握性能优化技巧
- 2024-12-07MySQL入门:新手必读的简单教程
- 2024-12-07MySQL入门:从零开始学习MySQL数据库
- 2024-12-07MySQL索引入门:新手快速掌握MySQL索引技巧
- 2024-12-06BinLog学习:MySQL数据库BinLog入门教程
- 2024-12-06Binlog学习:MySQL数据库的日志管理入门教程