一.开启MySQL服务器

1,  通过windows提供的服务管理器来完成

windows键+R    输入:  services.msc

2.在本地服务中打开其服务

3.在DOC命令行下

 net stop mysql
net start mysql

4.利用bin目录的mysqld来开启

 mysqld --defaults-file="G:/amp/mysql/my.ini"

二.客户端连接服务器

 mysql -uroot -p

登录数据库之后

 # 告诉MySQL服务器,当前客户端使用的是gbk编码
set names gbk;

操作数据库的三步曲(数据库的初始化操作):

1,  连接数据库

2,  设置默认的字符集

3,  选择默认的数据库

注意:

选择了默认的数据库,只会影响默认的操作,一样可以操作其他的数据库!

三.MySQL的帮助命令

帮助命令里面的命令都可以用' \ ' 加 首字母

 help
\h

四.MySQL注释符

单行注释:

  # 注释内容
-- 注释内容,这里的—与注释内容之间必须有一个空格!

多行注释

 /*  注释内容 */

五.数据库操作(DDL)

DDL

DDLData Definition Language,数据定义语言

主要是用来定义和维护数据库的各自操作对象(比如库、表、视图等),也可以说操作的层次是在数据库的库和表的逻辑结构和存储结构上面,并没有对表中的实际的数据进行增删改查等操作!

主要的关键字有:create、drop、alter、show

DML

DMLData Manipulation Language,数据操作语言

主要就是对表中的记录进行增删改查的操作!

其中“查询”部分,又叫做DQL(Data Query Language)!

主要的关键字:insert、delete、update、select

DCL

DCLData Control Language,数据控制语言

主要是对数据库进行一些统一的管理和控制,比如并发控制、存取控制、安全控制等,具体的操作有:权限管理,数据库的备份与恢复等!

 # 创建数据库(增 DDL)
create database 数据库名称[数据库选项];
create database php2017;
-- 特殊字符(用标识限定符反引号包裹 `)
create database `select`;
create database `2017`;
 # 查看当前有那些数据库(DDL)
show databases;
 -- 查看数据库的创建语句(DDL)
show create database 数据库名;
show create database php2017;
 -- 删除数据库(DLL)
drop database 数据库名称;
drop database php2017;
 -- 修改数据库(改 DDL)
/*
注意:数据库的名称不可通过sql命令直接修改
以前有一个rename语法可以修改库名的,但是有bug 如果要修改库名,怎么办?
有两种方式:
a.直接修改数据库的目录名,但是要慎重,因为有时候不是所有的数据库下的表都放在同一个地方!
b.先把当前数据库下的数据表导出,创建一个新的数据库再导入之前导出的数据表,最后再删除之前的数据库
*/ alter database 库名 新的库选项信息;
alter database php2017 default charset gbk;

六.数据表操作(DDL)

 -- 显示指定数据库(DDL)
select * from mysql.user;
-- 选择默认操作数据库
use 库名;
use php2017;  
  -- 创建数据表(DDL)
# 表选项:规定表的默认字符集和存储引擎
create table 表名(字段1 字段类型1,字段2 字段类型2, ...)[表选项];
create table student(
   id int() primary key auto_increment,
name varchar(),
age tinyint,
score float
);
 -- 查看数据表(DDL)
show tables;
-- 查看表的创建语句
show create table 表名;
show create student;
-- 为了让返回语句更有条理
show create student\G; -- 查看表结构
describe 表名;
desc 表名;
-- 删除数据表(DDL)
drop table 表名;
drop table student;
-- 删除的比较完整的语法形式
drop table if exists 表名;
drop table if exists student; -- 类似的语法
create database if not exists 库名;
drop database if not exists 库名; create table if not exists 表名;
drop table if exists 表名; create table if not exists student(
name varchar(20),
age tinyint,
score float
);
-- 修改数据表(DDL)
/*
表中有哪些地方可以修改?
表名,列定义(增加一列、删除一列,列名、列类型、修改列排序),表选项 一个技巧:
尽管修改数据表的关键字有很多,但是基本上可以分成两大部分:
第一部分:上级命令,alter table 表名
第二部分:下级命令,加上需要使用的关键字,比如:
改名(rename)
增加(add)
删除(drop)
重命名(change)
修改(modify)
*/ -- 修改表名
alter table 表名 rename to 新表名;
alter table 表名1 to 新表名1, 表名2 to 新表名2 to 新表名2; -- rename 还能将一个数据库的表移动到另一个数据库下
rename table stu1 to test.stu1; -- 修改列定义 -- 增加一列(first|after 是移动位置,默认在最后一位)
alter table 表名 add 新字段名 字段类型 [first | after 字段名]; -- 删除一列
alter table 表名 drop 字段名; -- 修改字段类型
alter table 表名 modify 字段名 新的字段类型;
alter table stu1 modify name varchar(30);
 alter table xiaoshou modify id int(11)  auto_increment;//修改主键自增 -- 重命名字段(字段类型可以保留原样或者修改)
alter table 表名 change 原字段名 新字段名 字段类型 [frist | after 字段名];
alter table stu1 change name stu_name varchar(20) after stu_id; -- 修改表选项
alter table 表名 新的表选项信息
alter table stu1 default charset gbk;

七.数据操作(DML)

-- 插入数据(DML)
insert into 表名(字段列表) values(值列表);
insert into stu1(stu_name, stu_id, score) values('鸣人', 1701, 98); -- 插入多条数据
insert into stu1 values
(1702,'佐助',2345,22,90),
(1703,'天天',2445,25,99),
(1704,'小樱',1445,26,80); -- 或者只是插入多条部分数据
insert into stu1(stu_name, stu_id, score) values
('晓红', 1705, 100),
('小米', 1706, 100),
('小明', 1707, 99.9); -- 另一种兼容语法
insert into 表名 set 字段名1 = 值, 字段名2 = 值2...;
insert into stu1 set stu_name = '零零七', score = 88;
-- 查询数据(DML)
select *|字段列表 from 表名[查询条件];
/*
1, 当查询所有字段的时候,可以使用*代替
2, 查询条件可以省略,如果省略代表查询所有的记录,相当于where 1;
*/
select * from stu1 where 1;
-- 删除数据(DML)
delete from 表名[删除条件]
deleta from stu1 where score< 90; -- 提示:MySQL中的NULL,比较特殊,不参与任何的运算!或者说参与任何运算的结果都为NULL
-- 修改数据(DML)
update 表名 set 字段1 = 新值1, 字段2 = 新值2,...[修改条件];
update stu1 set age = age + 1 where 1;

模糊查询

_ :代表任意的一个字符

%:代表任意的字符(包括0个)

show collation like 'utf8_%';

设置校对集

 -- 设置校对集语法
collate 校对集;
create database php2017 default charset gbk collate gbk_chinese_ci; /* 常见的校对规则有:
ci结尾:不区分大小写
cs结尾:区分大小写
bin结尾:二进制编码比较
关于校对集,我们一般使用其默认值就行了
utf8不支持中文比较,但是gbk支持(比较的还是拼音)
在真实的项目中,一般不会用中文作为排序的字段! */

MySQL数据库操作语句(cmd环境运行)的更多相关文章

  1. (转载)常用的Mysql数据库操作语句大全

    打开CMD,进入数据库命令:mysql -hlocalhost -uroot -p 退出数据库:exit 用户管理: 1.新建用户: >CREATE USER name IDENTIFIED B ...

  2. Mysql 数据库 操作语句

    mysql 格式语句规范 如何登陆你的数据库? 举例! 如果你的是 编译安装的花 那就得去编译安装后的那个目录中去,我的是安装到/usr/local/mysql 下登陆数据库:cd /usr/loca ...

  3. Mysql数据库操作语句总结(三)

    最近一段时间重新学习一下mysql命令行的用法, 这里简单记录一下 参考文章: https://www.cnblogs.com/bluealine/p/7832219.html 个人使用的是mysql ...

  4. mysql数据库操作语句整合

    查看版本:select version();显示当前时间:select now(); 注意:在语句结尾要使用分号; 远程连接 一般在公司开发中,可能会将数据库统一搭建在一台服务器上,所有开发人员共用一 ...

  5. 常用的Mysql数据库操作语句大全

    一.用户管理: 1.新建用户: >CREATE USER name IDENTIFIED BY 'ssapdrow'; 2.更改密码: >SET PASSWORD FOR name=PAS ...

  6. 常用Mysql数据库操作语句

    用户管理: 1.新建用户: 语法msyql>CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 说明: username - 你将创建 ...

  7. 零、常用的Mysql数据库操作语句大全

    零.用户管理: 1.新建用户: >CREATE USER name IDENTIFIED BY 'ssapdrow'; 2.更改密码: >SET PASSWORD FOR name=PAS ...

  8. MySQL数据库操作语句(补充1)(cmd环境运行)

    一.字符串类型 enum枚举类型 /* 也叫做枚举类型,类似于单选! 如果某个字段的值只能从某几个确定的值中进行选择,一般就使用enum类型, 在定义的时候需要将该字段所有可能的选项都罗列出来: */ ...

  9. Mysql数据库操作语句总结(一)

    下面的内容来源于链接 https://www.cnblogs.com/bchjazh/p/5997728.html,  个人在此基础上进一步添加了一点东西. 个人操作数据库:  mysql 5.5.2 ...

随机推荐

  1. 2、mysql密码过期的修改方法(your password has expired)

    今天打开SQLyog提示密码过期:Your password has expired 解决方法:    1.  启动MySQL服务 2.  启动MySQL后台 3.  执行以下命令 step 1: S ...

  2. SpringBoot Jar应用Linux后台部署执行

    nohup java -jar shop-h5.jar > log_h5.file 2>&1 &

  3. mybatis学习:mybatis注解开发一对多

    实体类User: public class User implements Serializable { private Integer id; private String username; pr ...

  4. UVA10215The Largest/Smallest Box(小数精度)

    本身很容易却因为评测机有毒的一道题,,,看网上题解说最后一个答案要加一个很小的数才能AC,据说是因为没有speci judge #include <iostream> #include & ...

  5. Luogu P1948 [USACO08JAN]电话线Telephone Lines(最短路+dp)

    P1948 [USACO08JAN]电话线Telephone Lines 题意 题目描述 Farmer John wants to set up a telephone line at his far ...

  6. Leetcode429.N-ary Tree Level Order TraversalN叉树的层序遍历

    给定一个 N 叉树,返回其节点值的层序遍历. (即从左到右,逐层遍历). 例如,给定一个 3叉树 : 返回其层序遍历: [ [1], [3,2,4], [5,6] ] 说明: 树的深度不会超过 100 ...

  7. 【python之路41】web框架

    一.web框架介绍 一共有两种web框架 1.既包含socket又能逻辑处理 tornado框架 2.只能处理逻辑 Django bottle flask  二.web框架的本质 众所周知,对于所有的 ...

  8. 使用线程 Monitor.Wait() 和 Monitor.Pulse()

      Wait() 和 Pulse() 机制用于线程间交互.当在一个对象上使用Wait() 方法时,访问这个对象的线程就会一直等待直到被唤醒.Pulse() 和 PulseAll() 方法用来通知等待的 ...

  9. Elasticsearch连接类(带密码)

    /** * 获取ES连接类 * * @author 陈康 * @description * @create 2019/08/15 **/ @Component("ElasticsearchR ...

  10. 基于HHT和RBF神经网络的故障检测——第二篇论文读后感

    故障诊断主要包括三部分: 1.故障信号检测方法(定子电流信号检测 [ 定子电流幅值和电流频谱 ] ,振动信号检测,温度信号检测,磁通检测法,绝缘检测法,噪声检测法) 2.故障信号的处理方法,即故障特征 ...