1sql
------------------ MySQL 服务
-- sudo service mysql start/stop/restart/status
------------------ 数据库相关的
-- 查看数据库
show databases;
-- 使用数据库
use 数据库名;
-- 查看当前使用的数据库
select database();
-- 创建数据库
create database 数据库名 charset=utf8;
-- 删除数据库
drop database 数据库名;
------------------ 备份和恢复
-- 备份 命令行中执行, 使用的是mysqldump
mysqldump -uroot -p 数据库名 > xxx.sql
-- 只备份指定的表
mysqldump -uroot -p 数据库名 --tables 表名1 表名2 > xxx.sql
-- 恢复
mysql -uroot -p 数据库名 < xxx.sql
-- 恢复,已经在mysql 交互环境中
source xxx.sql
------------------表操作
--- 查看当前库中所有的表
show tables;
--- 查看表结构
desc 表名;
--- 查看创建表的语句
show create table 表名;
--- 创建表
CREATE TABLE `students` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(20) DEFAULT NULL,
`age` tinyint(3) unsigned DEFAULT '0',
`height` decimal(5,2) DEFAULT NULL,
`gender` enum('男','女','保密') DEFAULT NULL,
`cls_id` int(10) unsigned DEFAULT '0',
PRIMARY KEY (`id`)
)
--- 删除表
drop table students;
--- 修改表
-- 添加字段
-- alter table 表名 add 列名 类型;
alter table students add birthday datetime;
-- 修改字段,但是不重命名
alter table students modify birthday int;
-- 修改字段,并且重命名
alter table students change birthday birth bigint not null;
-- 删除字段
alter table students drop birthday;
------------------表的数据操作,基本的增删改查
-- 查询(retrieve)
select * from students;
select name,age from students;
-- 插入
insert into students values(id, name, age, height, gender, cls_id); -- 得填上id
insert into students(name, age) values('Mike', 10);
insert into students(name, age) values('Mike', 10), ('John', 11);
-- 修改
update students set name='Mike' where id=1; -- 没有TM的into from什么的
-- 删除
delete from students where id=1;
-- 逻辑删除
update students set is_delete=1 where id=1;
-------------------
-- DQL:数据查询语言,用于对数据进行查询,如select
-- DML:数据操作语言,对数据进行增加、修改、删除,如insert、udpate、delete
-- TPL:事务处理语言,对事务进行处理,包括begin transaction、commit、rollback
-- DCL:数据控制语言,进行授权与权限回收,如grant、revoke
-- DDL:数据定义语言,进行数据库、表的管理等,如create、drop
-- CCL:指针控制语言,通过控制指针完成表的操作,如declare cursor
-- 对于web程序员来讲,重点是数据的crud(增删改查),必须熟练编写DQL、DML,能够编写DDL完成数据库、表的操作,其它语言如TPL、DCL、CCL了解即可
-- SQL 是一门特殊的语言,专门用来操作关系数据库
-- 不区分大小写
-- TINYINT 1 -128 ~ 127 0 ~ 255
-- SMALLINT 2 -32768 ~ 32767 0 ~ 65535
-- MEDIUMINT 3 -8388608 ~ 8388607 0 ~ 16777215
-- INT/INTEGER 4 -2147483648 ~2147483647 0 ~ 4294967295
-- BIGINT 8 -9223372036854775808 ~ 9223372036854775807 0 ~ 18446744073709551615
--
-- CHAR 0-255 类型:char(3) 输入 'ab', 实际存储为'ab ', 输入'abcd' 实际存储为 'abc'
-- VARCHAR 0-255 类型:varchar(3) 输 'ab',实际存储为'ab', 输入'abcd',实际存储为'abc'
-- TEXT 0-65535 大文本
--
-- DATE 4 '2020-01-01'
-- TIME 3 '12:29:59'
-- DATETIME 8 '2020-01-01 12:29:59'
-- YEAR 1 '2017'
-- TIMESTAMP 4 '1970-01-01 00:00:01' UTC ~ '2038-01-01 00:00:01' UTC
1sql的更多相关文章
- hive高阶1--sql和hive语句执行顺序、explain查看执行计划、group by生成MR
hive语句执行顺序 msyql语句执行顺序 代码写的顺序: select ... from... where.... group by... having... order by.. 或者 from ...
- 关于面试总结1-SQL学生表
前言 每次面试必考SQL,小编这几年一直吃SQ的亏,考题无非就是万年不变学生表,看起来虽然简单,真正写出来,还是有一定难度.于是决定重新整理下关于SQL的面试题,也可以帮助更多的人过SQL这一关. 作 ...
- .net core 2.1-----Sql Server数据库初体验
刚开始接触asp.net core,在学习的过程中遇到了一些小问题,在这里记录一下! 在我们项目的开发过程中,肯定会和数据库打交道,所以我尝试了一下用asp.net core链接数据库,并读取表中的数 ...
- 廖雪峰Java15JDBC编程-2SQL入门-1SQL介绍
1.SQL:结构化查询语言 Structured Query Language 针对关系数据库设计 各种数据库基本一致 允许用户通过SQL查询数据而不关心数据库底层存储结构 1.1 SQL使用: 可以 ...
- 数据库SQL语言从入门到精通--Part 1--SQL语言概述
数据库从入门到精通合集(超详细,学习数据库必看) 一.SQL概述 关系数据库标准语言SQL(结构化查询语言). 结构化查询语言(Structured Query Language)简称SQL,是一种特 ...
- 1-SQL Server2019安装
sql server2019安装 首先去官网下载(下载express版本): 打开安装程序 选择自定义 更改一下安装目录,点击安装 等待安装 等安装完成后,出现如下页面 选择SQL Server独立安 ...
- Mybatis常用总结:参数,返回,执行sql,include等
1.参数注入1.1用#{0},#{1}的形式,0代表第一个参数,1代表第二个参数 public List<RecordVo> queryList(String workerId, Inte ...
- 【转】使用SQL Tuning Advisor STA优化SQL
SQL优化器(SQL Tuning Advisor STA)是Oracle10g中推出的帮助DBA优化工具,它的特点是简单.智能,DBA值需要调用函数就可以给出一个性能很差的语句的优化结果.下面介绍一 ...
- asp.net面试题汇总
1.静态成员和非静态成员的区别? 答: 静态变量使用 static 修饰符进行声明,在类被实例化时创建,通过类进行访问不带有 static 修饰符声明的变量称做非静态变量,在对象被实例化时创建,通过对 ...
随机推荐
- vue-music 使用better-scroll遇到轮播图不能自动轮播
根据vue-music视频中slider组建的使用,当安装新版本的better-scroll,轮播组件,不能正常轮播 这是因为,better-scroll发布新版本之后,参数设置发生改变 这是旧版本: ...
- 小白 Python 爬虫部署 Linux
前言 前面国庆节的时候写过一个简易的爬虫. <Python 简易爬虫实战> 还没看过的同学可以先看一下,这只爬虫主要用来爬取各个博客平台的阅读量等数据,一直以来都是每天晚上我自己手动在本地 ...
- SpringBoot整合FastJson(七)
一.Maven依赖 <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson&l ...
- Django表单集合----Formset
概述:Formset(表单集)是多个表单的集合.Formset在Web开发中应用很普遍,它可以让用户在同一个页面上提交多张表单,一键添加多个数据,比如一个页面上添加多个用户信息,下面将会详细讲述如何使 ...
- Java 给Word指定字符串添加批注
本文将介绍在Java程序中如何给Word文档中的指定字符串添加批注.前文中,主要介绍的是针对某个段落来添加批注,以及回复.编辑.删除批注的方法,如果需要针对特定关键词或指定字符串来设置批注,可以参考本 ...
- 如何在 Spring/Spring Boot 中做参数校验?你需要了解的都在这里!
本文为作者原创,如需转载请在文首著名地址,公众号转载请申请开白. springboot-guide : 适合新手入门以及有经验的开发人员查阅的 Spring Boot 教程(业余时间维护中,欢迎一起维 ...
- 使用Typescript重构axios(二十六)——添加HTTP授权auth属性
0. 系列文章 1.使用Typescript重构axios(一)--写在最前面 2.使用Typescript重构axios(二)--项目起手,跑通流程 3.使用Typescript重构axios(三) ...
- Java基础系列4:抽象类与接口的前世今生
该系列博文会告诉你如何从入门到进阶,一步步地学习Java基础知识,并上手进行实战,接着了解每个Java知识点背后的实现原理,更完整地了解整个Java技术体系,形成自己的知识框架. 1.抽象类: 当编写 ...
- Opencv python(3)| cv. VideoCapture.get() 参数介绍
cv2.VideoCapture.get () 的 (0-18)参数 cv2.VideoCapture.get(0) 视频文件的当前位置(播放)以毫秒为单位 cv2.Video ...
- Abp vNext 自定义 Ef Core 仓储引发异常
问题 在使用自定义 Ef Core 仓储和 ABP vNext 注入的默认仓储时,通过两个 Repository 进行 Join 操作,提示 Cannot use multiple DbContext ...