MySql 基础使用(一)
参考网址:http://c.biancheng.net/view/7143.html
1. 安装完成后,登录mysql.
//登录mysql
mysql -u root -p(mysql -u root -ppass,注意pass和-p参数无空格)
// 查看状态
status
//在管理员模式下启动mysql
net start mysql57(注意服务名称)
net stop mysql57
2. MySql配置文件
(windows)my.ini文件,一般情况下,my.ini 在 MySql 安装的根目录下,也有可能在隐藏文件夹“C:\ProgramData”下面。http://c.biancheng.net/view/7571.html
(Linux)my.cnf文件,http://c.biancheng.net/view/7618.html
3. SQL概述
SQL 包含以下 4 部分:
1)数据定义语言(Data Definition Language,DDL)
用来创建或删除数据库以及表等对象,主要包含以下几种命令:
- DROP:删除数据库和表等对象
- CREATE:创建数据库和表等对象
- ALTER:修改数据库和表等对象的结构
2)数据操作语言(Data Manipulation Language,DML)
用来变更表中的记录,主要包含以下几种命令:
- SELECT:查询表中的数据
- INSERT:向表中插入新数据
- UPDATE:更新表中的数据
- DELETE:删除表中的数据
3)数据查询语言(Data Query Language,DQL)
用来查询表中的记录,主要包含 SELECT 命令,来查询表中的数据。
4)数据控制语言(Data Control Language,DCL)
用来确认或者取消对数据库中的数据进行的变更。除此之外,还可以对数据库中的用户设定权限。主要包含以下几种命令:
- GRANT:赋予用户操作权限
- REVOKE:取消用户的操作权限
- COMMIT:确认对数据库中的数据进行的变更
- ROLLBACK:取消对数据库中的数据进行的变更
4. 创建
(在mySQL中关键字不区分大小写)
//创建数据库
CREATE DATABASES test_db;
//使用 MySQL 命令行工具创建一个测试数据库,命名为 test_db_char,指定其默认字符集为 utf8,默认校对规则为 utf8_chinese_ci(简体中文,不区分大小写):
mysql> CREATE DATABASE IF NOT EXISTS test_db_char
DEFAULT CHARACTER SET utf8
DEFAULT COLLATE utf8_chinese_ci;
//创建后修改(同样可用于修改表)
mysql> alter database test_db
default character set gb2312
default collate gb2312_chinese_ci;
// 切换数据库
use test_db;
//创建表,支持utf8
CREATE TABLE students(
student_id INT UNSIGNED,
name VARCHAR(30) ,
sex CHAR(1),
birth DATE,
PRIMARY KEY(student_id)
) character set = utf8;
//修改已有表,支持utf8
alter table students convert to character set utf8;
//显示数据库
SHOW DATABASES LIKE 'test_db';
// 使用‘%’通配符显示包含test的数据库
SHOW DATABASES LIKE '%test%';
// 删除表
drop databases if exists test_db;
//查看表
show tables;
//DESCRIBE/DESC 语句可以查看表的字段信息,包括字段名、字段数据类型、是否为主键、是否有默认值等。
desc students;
//SHOW CREATE TABLE语句可以用来显示创建表时的CREATE TABLE语句
show create table students;
//修改表名
alter table students rename to student;
//修改表字符集
alter table student character set gb2312 collate gb2312_chinese_ci;
//修改字段名称
alter table student change student_id id int(15) unsigned;
//修改字段数据类型
alter table student modify id int(20);
//删除字段
alter table student drop sex;
//添加字段,末尾、表头、中间位置。
alter table student add sex char(1);
alter table student add sex char(1) first;
alter table student add sex char(1) after id;
//关联表,自己试验的过程中,删除主表不会报错,暂未找到问题,mysql5.7.30
CONSTRAINT fk_emp4_emp5 FOREIGN KEY (deptId) REFERENCES tb_emp4(id)
//解除外键约束
ALTER TABLE tb_emp5 DROP FOREIGN KEY fk_emp4_emp5;
(关于约束的问题详看下一章)
5. 数据类型
1) 数值类型
整数类型包括 TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT,浮点数类型包括 FLOAT 和 DOUBLE,定点数类型为 DECIMAL。
2) 日期/时间类型
包括 YEAR、TIME、DATE、DATETIME 和 TIMESTAMP。
3) 字符串类型
包括 CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM 和 SET 等。
4) 二进制类型
包括 BIT、BINARY、VARBINARY、TINYBLOB、BLOB、MEDIUMBLOB 和 LONGBLOB。
6. 存储类型
现在许多数据库管理系统都支持多种不同的存储引擎。MySQL 的核心就是存储引擎。MySQL 提供了多个不同的存储引擎,包括处理事务安全表的引擎和处理非事务安全表的引擎。在 MySQL 中,不需要在整个服务器中使用同一种存储引擎,针对具体的要求,可以对每一个表使用不同的存储引擎。MySQL 5.7 支持的存储引擎有 InnoDB、MyISAM、Memory、Merge、Archive、CSV、BLACKHOLE 等。可以使用SHOW ENGINES;语句查看系统所支持的引擎类型。
如何选择MySQL存储引擎?http://c.biancheng.net/view/7185.html
//显示支持的引擎
show engines;
//显示默认搜索引擎
show variables like 'default_storage_engine%';
//修改默认搜索引擎
set default_storage_engine=MyISAM;
//显示数据表的当前搜索引擎
show create table students;
//修改数据表的搜索引擎
alter table students engine=MyISAM;
//以上这种方法适用于修改单个表的存储引擎,如果希望修改默认的存储引擎,就需要修改my.cnf(my.ini)配置文件。在 my.cnf (my.ini) 配置文件的 [mysqld] 后面加入:
default-storage-engine=存储引擎名称
MySql 基础使用(一)的更多相关文章
- Mysql基础代码(不断完善中)
Mysql基础代码,不断完善中~ /* 启动MySQL */ net start mysql /* 连接与断开服务器 */ mysql -h 地址 -P 端口 -u 用户名 -p 密码 /* 跳过权限 ...
- MYSQL基础操作
MYSQL基础操作 [TOC] 1.基本定义 1.1.关系型数据库系统 关系型数据库系统是建立在关系模型上的数据库系统 什么是关系模型呢? 1.数据结构可以规定,同类数据结构一致,就是一个二维的表格 ...
- 【夯实Mysql基础】记一次mysql语句的优化过程
1. [事件起因] 今天在做项目的时候,发现提供给客户端的接口时间很慢,达到了2秒多,我第一时间,抓了接口,看了运行的sql,发现就是 2个sql慢,分别占了1秒多. 一个sql是 链接了5个表同时使 ...
- MySQL基础(非常全)
MySQL基础 一.MySQL概述 1.什么是数据库 ? 答:数据的仓库,如:在ATM的示例中我们创建了一个 db 目录,称其为数据库 2.什么是 MySQL.Oracle.SQLite.Access ...
- mysql 基础篇5(mysql语法---数据)
6 增删改数据 -- ********一.增删改数据********* --- -- 1.1 增加数据 -- 插入所有字段.一定依次按顺序插入 INSERT INTO student VALUES(1 ...
- MySQL 基础语句
MySQL 基础语句 多个知识点 ----------------------------------------------------------------------------------- ...
- MySQL:基础—数据分组
MySQL:基础-数据分组 1.为什么要分组: 比如一个表中有多条订单记录,如上图,每条记录对应着一个商品,现在我要查询 每个商品被订购的单数 准备出货?也就是找到每个商品被订购的数量. 如果只找一个 ...
- MySQL基础学习总结
1.MySQL基础概念 mysql逻辑架构如下: 每个客户端连接都会在服务器中拥有一个线程,这个连接的查询只会在这个单独的线程中执行. MySQL是分层的架构.上层是服务器层的服务和查询执行引擎,下层 ...
- MySQL基础(五)——视图
MySQL基础(五)--视图
- MySQL基础(四)——索引
MySQL基础(四)--索引
随机推荐
- P1435 回文字串(DP)
题目描述 回文词是一种对称的字符串.任意给定一个字符串,通过插入若干字符,都可以变成回文词.此题的任务是,求出将给定字符串变成回文词所需要插入的最少字符数. 比如 "Ab3bd"插 ...
- .NET Core项目自动化测试和代码覆盖率审查
这篇文章给大家分享一下,如何配置.NET Core项目自动化测试和代码覆盖率审查. 基本知识,请参考这里: https://docs.microsoft.com/en-us/dotnet/core/t ...
- Butterfly美化
Butterfly美化 首先提示,本文量特别大哦!基本上有所有的美化,还在持续更新ing,谨慎入坑......... 主题配置文件修改 基础配置 最最最开始的,好不容易搭建了自己的个人博客,当然要写上 ...
- 卸载vue2.9.6版本,安装新版本
1.检查vue安装目录(cmd中输入) where vue 2.删除目录中的关于vue的文件(可以将文件按时间排序,找到vue相关的文件删除) 3.检查vue是否还能找到 4.安装新版本的vue np ...
- sdut2878 环形依赖的DP(高斯消元,剪枝后的模板
这题的状态是循环依赖的有环.. 之前一道概率DP,类似有环..但是它是可以消掉的 比如dp[i]=0.3*dp[i+1]+0.2*dp[i+2]+0.5*dp[i]; 完全可以变成,0.5*dp[i] ...
- js inheritance all in one
js inheritance all in one prototype & proto constructor Object.definepropety Object.create() js ...
- npm & cli & node.js
npm & cli & node.js https://www.npmjs.com/ https://www.npmjs.com/settings/xgqfrms/packages h ...
- where is the storage location of the browser's HTTP cache? disk or memory
where is the storage location of the browser's HTTP cache? disk or memory HTTP cache & storage l ...
- copyright@xgqfrms
copyright@xgqfrms copyright & seo ## refs *** <div> <a href="https://info.flagcoun ...
- JS Calendar API
JS Calendar API js 如何获取当天是周几(一周的第几天) const date = new Date(); // Mon Mar 23 2020 15:15:36 GMT+0800 ( ...