一.开启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. 19-10-24-J-快乐?

    向未来的大家发送祝福(不接受的请自动忽略): 祝大家程序员节快乐! 好了. ZJ一下 额. 考场上差点死了. 码1h后,T1还没过大样例. 我×××. 后来发现是自己××了. T2T3丢暴力. 比咕的 ...

  2. Android根据联系人姓名首字符顺序读取通讯录

      Android根据联系人姓名首字符顺序读取通讯录 版权声明:本文为Zhang Phil原创文章,欢迎转载!转载请注明出处:http://blog.csdn.net/zhangphil 本文给出了A ...

  3. 软件-MQ-RabbitMQ:RabbitMQ

    ylbtech-软件-MQ-RabbitMQ:RabbitMQ RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件(亦称面向消息的中间件).RabbitMQ服务器是用Erlang语 ...

  4. jsp导出的word默认打开是web视图,希望是页面视图

    方法1 ( velocity+java )我也遇到了这个问题,已经解决:1 .<html xmlns:v='urn:schemas-microsoft-com:vml'xmlns:o='urn: ...

  5. Object源码阅读

    native修饰符:所修饰的方法的实现是由非java代码实现的 /** * 一个java程序如果想调用本地方法,需要执行两个步骤 * 1.通过system.loadLibrary()将包含本地方法实现 ...

  6. tc: Linux HTTP Outgoing Traffic Shaping (Port 80 Traffic Shaping)(转)

    原文:https://www.cyberciti.biz/faq/linux-traffic-shaping-using-tc-to-control-http-traffic/ I‘ve 10Mbps ...

  7. PHP苹果推送实现(APNS)

    以下资料网上收集整理得来 1.在ios dev center制作相关证书和文件用客户端实现(不再赘述,网上很多,) 网上教程: http://blog.csdn.net/lizhenning87/ar ...

  8. (5)连续非周期信号的傅里叶变换(频谱) & 周期信号的傅里叶变换

    参考资料:<信号与系统(第二版)> 杨晓非 何丰 从傅里叶级数到傅里叶变换 通过分析连续周期信号的周期与频谱的关系,当周期趋于无穷大的时候,周期信号变成非周期信号.从频谱分析观点来看,当T ...

  9. Hibernate - HHH000352: Unable to release batch statement

    这是hibernate的一个bug,具体看https://hibernate.atlassian.net/browse/HHH-11732?attachmentViewMode=list When u ...

  10. laravel--request类获取传值

    request类获取传值 Request类的方法很多,常用的有如下几个: Request -> all() : 表示一次性获取所有的传值(包括get和post,但不能获取参数) Request ...