迟到的整理笔记,记录小编自己所知所学。互联网是有记忆的
ANSI,美国国家标准化组织

MySQL是关系型数据库
SQL历史:

1970 IBM首先提出
1980 改名SQL
1986 ANSI制定了数据库的规则(方便了学习其他数据库)

SQL的语句:(SQL 是一门 ANSI 的标准计算机语言(结构化查询语言),用来访问和操作数据库系统,一定要记住,SQL 对大小写不敏感!,一般规定关键字大写。)

具体介绍可参考下面地址:https://www.w3school.com.cn/sql/sql_intro.asp

SQL语句分类:

DDL(数据定义语言) create"创建“ ,drop”删除“
DML(实际操作语言 CRED”增删改查“
DCL(数据控制语言1) grant"授权” ,revoke"撤销“

SQL 中最重要的 DDL 语句:

SELECT 从数据库表中获取数据
UPDATE 更新数据库表中的数据
DELETE 从数据库表中删除数据
INSERT INTO 向数据库表中插入数据
CREATE DATABASE 创建新数据库
ALTER DATABASE 修改数据库
CREATE TABLE 创建新表
ALTER TABLE 变更(改变)数据库表
DROP TABLE - 删除表
CREATE INDEX 创建索引(搜索键)
DROP INDEX 删除索引
CREATE DATABASE  创建新数据库名 【default charset='utf8'];没有编码,1,有默认走默认,2,找配置文件 ,3,默认编码(拉丁文编码,中文报错)  /*指定编码,(ststem cls ”清屏“)/

增加数据库

进入增加数据库进行查看(use 数据库名称)

删除数据库:

create database db_nhjc default charset="utf8";/*创建可以使用中文数据库db_nhjc/

数据库,一般存在5种约束

主键约束 用来描述唯一标识符
非空约束 字段的值不能为空
唯一约束 唯一索引中允许有null“空”
默认值约束 添加默认选项参数
检查约束 检测和过滤不符合实际意义的数据(5.8版本前mysql中不生效的!!)

MySQL数据类型

CHAR(size) 保存固定长度的字符串(可包含字母、数字以及特殊字符)。在括号中指定字符串的长度。最多 255 个字符。
VARCHAR(size) 保存可变长度的字符串(可包含字母、数字以及特殊字符)。在括号中指定字符串的最大长度。最多 255 个字符。注释:如果值的长度大于 255,则被转换为 TEXT 类型。
TINYTEXT 存放最大长度为 255 个字符的字符串。
TEXT 存放最大长度为 65,535 个字符的字符串。
BLOB 用于 BLOBs (Binary Large OBjects)。存放最多 65,535 字节的数据。
MEDIUMTEXT 存放最大长度为 16,777,215 个字符的字符串。
MEDIUMBLOB 用于 BLOBs (Binary Large OBjects)。存放最多 16,777,215 字节的数据。
LONGTEXT 存放最大长度为 4,294,967,295 个字符的字符串。
LONGBLOB 用于 BLOBs (Binary Large OBjects)。存放最多 4,294,967,295 字节的数据。
ENUM(x,y,z,etc.) 允许你输入可能值的列表。可以在 ENUM 列表中列出最大 65535 个值。如果列表中不存在插入的值,则插入空值。注释:这些值是按照你输入的顺序存储的。可以按照此格式输入可能的值:ENUM(‘X’,‘Y’,‘Z’)
SET 与 ENUM 类似SET 最多只能包含 64 个列表项,不过 SET 可存储一个以上的值。

Number 类型:

TINYINT(size) -128 到 127 常规。0 到 255 无符号*。在括号中规定最大位数。
SMALLINT(size) -32768 到 32767 常规。0 到 65535 无符号*。在括号中规定最大位数。MEDIUMINT(size) -8388608 到 8388607 普通。0 to 16777215 无符号*。在括号中规定最大位数。
INT(size) -2147483648 到 2147483647 常规。0 到 4294967295 无符号*。在括号中规定最大位数。
BIGINT(size) -9223372036854775808 到 9223372036854775807 常规。0 到 18446744073709551615 无符号*。在括号中规定最大位数。
FLOAT(size,d) 带有浮动小数点的小数字。在括号中规定最大位数。在 d 参数中规定小数点右侧的最大位数。
DOUBLE(size,d) 带有浮动小数点的大数字。在括号中规定最大位数。在 d 参数中规定小数点右侧的最大位数。
DECIMAL(size,d) 作为字符串存储的 DOUBLE 类型,允许固定的小数点。

这些整数类型拥有额外的选项 UNSIGNED。通常,整数可以是负数或正数。如果添加 UNSIGNED 属性,那么范围将从 0 开始,而不是某个负数。
创建表

create table t_user (# 定义表的结构字段名称1 字段1类型 [约束条件,]字段名称2 字段2类型 [约束条件,]字段名称3 字段3类型 [约束条件,]...字段名称n 字段n类型 [约束条件]);

下面说一个例子来展示单表的增删查改
首先我们先创建库“ db_mingzhu”(MySQL本身的四个库,小白的我们不要乱动),在库中创建四张表 t_sanguo t_shuihuo t_xiyou t_honglou。并添加相应的人物。

create database db_mingzhu default charset="utf8";
USE db_mingzhu
CREATE TABLE  t_sanguo ( id int primary key auto_increment comment '用户主键',name varchar(20) not null unique comment '用户名称', feeling varchar(20), factions varchar(20));
INSERT INTO t_sanguo VALUES(NULL,"曹操","宁教我负天下人,休教天下人负我","魏");
INSERT INTO t_sanguo VALUES(NULL,"刘备","勿以恶小而为之,勿以善小而不为","蜀");
INSERT INTO t_sanguo VALUES(NULL,"孙权","足下不死,孤不得安!","吴");
INSERT INTO t_sanguo VALUES(NULL,"诸葛亮","鞠躬尽瘁死而后已","蜀");
INSERT INTO t_sanguo VALUES(NULL,"司马懿","为人者,有大度成大器矣!","魏");
INSERT INTO t_sanguo VALUES(NULL,"周瑜","将者贵在知敌虚实,而后避实而击虚。","吴");

现象:

水浒:(其他表相同,小编就不一一操作了)

CREATE TABLE  t_shuihuo ( id int primary key auto_increment comment '用户主键',name varchar(20) not null unique comment '用户名称', nickname varchar(20) );
INSERT INTO t_shuihuo VALUES(NULL,"九纹龙","史进");
INSERT INTO t_shuihuo VALUES(NULL,"神机军师","朱武");
INSERT INTO t_shuihuo VALUES(NULL,"跳涧虎","陈达");
INSERT INTO t_shuihuo VALUES(NULL,"白花蛇","杨春");
INSERT INTO t_shuihuo VALUES(NULL,"花和尚","鲁智深");
INSERT INTO t_shuihuo VALUES(NULL,"打虎将","李忠");
INSERT INTO t_shuihuo VALUES(NULL,"小霸王","周通");
INSERT INTO t_shuihuo VALUES(NULL,"豹子头","林冲");
INSERT INTO t_shuihuo VALUES(NULL,"小旋风","柴进");
INSERT INTO t_shuihuo VALUES(NULL,"旱地忽律","朱贵");
INSERT INTO t_shuihuo VALUES(NULL,"摸着天","杜迁");
INSERT INTO t_shuihuo VALUES(NULL,"云里金刚","宋万");
INSERT INTO t_shuihuo VALUES(NULL,"青面兽","杨志");
INSERT INTO t_shuihuo VALUES(NULL,"急先锋","索超");
INSERT INTO t_shuihuo VALUES(NULL,"美髯公","朱仝");
INSERT INTO t_shuihuo VALUES(NULL,"插翅虎","雷横");
INSERT INTO t_shuihuo VALUES(NULL,"赤发鬼","刘唐");
INSERT INTO t_shuihuo VALUES(NULL,"智多星","吴用");
INSERT INTO t_shuihuo VALUES(NULL,"立地太岁","阮小二");
INSERT INTO t_shuihuo VALUES(NULL,"短命二郎","阮小五");
INSERT INTO t_shuihuo VALUES(NULL,"活阎王","阮小七");
INSERT INTO t_shuihuo VALUES(NULL,"入云龙","公孙胜");
INSERT INTO t_shuihuo VALUES(NULL,"白日鼠","白胜");
INSERT INTO t_shuihuo VALUES(NULL,"操刀鬼","曹正");
INSERT INTO t_shuihuo VALUES(NULL,"及时雨","宋江");
INSERT INTO t_shuihuo VALUES(NULL,"铁扇子","宋清");
INSERT INTO t_shuihuo VALUES(NULL,"行者","武松");
INSERT INTO t_shuihuo VALUES(NULL,"菜园子","张青");
INSERT INTO t_shuihuo VALUES(NULL,"金眼彪","施恩");
INSERT INTO t_shuihuo VALUES(NULL,"毛头星","孔明");
INSERT INTO t_shuihuo VALUES(NULL,"独火星","孔亮");
INSERT INTO t_shuihuo VALUES(NULL,"锦毛虎","燕顺");
INSERT INTO t_shuihuo VALUES(NULL,"矮脚虎","王英");
INSERT INTO t_shuihuo VALUES(NULL,"白面郎君","郑天寿");
INSERT INTO t_shuihuo VALUES(NULL,"小李广","花荣");
INSERT INTO t_shuihuo VALUES(NULL,"镇三山","黄信");
INSERT INTO t_shuihuo VALUES(NULL,"霹雳火","秦明");
INSERT INTO t_shuihuo VALUES(NULL,"小温侯","吕方");
INSERT INTO t_shuihuo VALUES(NULL,"赛仁贵","郭盛");
INSERT INTO t_shuihuo VALUES(NULL,"石将军","石勇");
INSERT INTO t_shuihuo VALUES(NULL,"催命判官","李立");
INSERT INTO t_shuihuo VALUES(NULL,"混江龙","李俊");
INSERT INTO t_shuihuo VALUES(NULL,"出洞蛟","童威");
INSERT INTO t_shuihuo VALUES(NULL,"翻江蜃","童猛");
INSERT INTO t_shuihuo VALUES(NULL,"病大虫","薛永");
INSERT INTO t_shuihuo VALUES(NULL,"船伙儿","张横");
INSERT INTO t_shuihuo VALUES(NULL,"神行太保","戴宗");
INSERT INTO t_shuihuo VALUES(NULL,"浪里白条","张顺");
INSERT INTO t_shuihuo VALUES(NULL,"拼命三郎","石秀");
INSERT INTO t_shuihuo VALUES(NULL,"浪子","燕青");


修改 UPDATE

select * from  表名称;     慎用,重新加载表#update 表名称 set 字段1=新值 [, 字段2=新值 ...] where 条件update 表名称 set 字段 = 修改值 ; 指定字段修改,改一字段列
update  表名称 set  字段= age + 1 WHERE id = 6;  指定必须是int类型,进行加减,(WHERE id )按照id“字段”主键约束给字段进行修改
UPDATE 表名称 set 字段="120" where age >= 18;    where后可以使用">=" "!=" 等


(记对刷新查看)

删除 delete

# delete from 表名称 where 条件;delete from 表名称 where id = 14;    指定id字段进行删除truncate 表名称;-- 慎用!!!
实例:
delete from t_sanguo where id = 1; -- 删除id1

查询

# select * from 表名称
select * from t_user;  -- 查看一个表全部“*”代表全部
-- 查询固定的列
select id from t_user;   --查看单个字段元素
select id, name from t_user;  --查看多个字段列元素SELECT * from t_user where id = 1;  -- 查看id=1的元素SELECT * from t_user where age > 15;  -- 查看>15的元素
SELECT * FROM t_user where age >= 18 or id = 4;  -- 也可以使用关联语句SELECT * from t_user where id != 1;
SELECT * from t_user where id <> 1;   -- <> 作用与 != 相同SELECT * FROM t_user WHERE birthday is null;  --  查询空和非空
SELECT * from t_user where birthday IS NOT NULL;


修改表列类型:

ALTER TABLE 表名 MODIFY 列名 列类型; 修改表列名与类型
ALTER TABLE 表名 ADD 列名 列类型; 增加表列
ALTER TABLE 表名 DROP 列名; 删除列
ALTER TABLE 表名 CHANGE 旧列名 新列名 列类型; 列改名
ALTER TABLE 表名 RENAME 新表名; 或者RENAME TABLE 表名 TO 新表名; 更改表名

MySQL数据库的单表基本操作(一,SQL语句了解与名著小练习)相关推荐

  1. Mysql数据库的单表查询

    我们在使用Mysql数据库存储数据时,对数据的查询方法是至关重要的,此博客主要介绍Mysql数据库的查询数据方法. 单表查询 单表查询就是我们仅对一个表进行查询,我们可以首先创建一个名为table的表 ...

  2. java对mysql数据库进行单表筛选备份、还原操作

    最近在做的一个项目需要对mysql数据库中的单个表格进行备份 其中,一部分表格需要进行筛选备份(例如对最近插入的1000条记录进行备份) 思路:java调用系统命令完成备份操作 假设现在有数据库tes ...

  3. mysql数据库之单表查询

    单标查询 单表查询语句 关键字执行的优先级 简单查询 where约束 group by 聚合函数 HAVING过滤 order by 查询排序 LIMIT限制查询的记录数 使用正则表达式查询 单表查询 ...

  4. MYSQL数据库简介和常用的基本SQL语句

    1.MYSQL数据库简介 MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理. 2.常用数据类型 ...

  5. MySQL数据库中的索引(含SQL语句)

    文章目录 为什么要用索引 索引是什么 索引的原理 优点 缺点 创建索引的原则 什么情况下需要索引 什么情况下不需要索引 索引的分类 主键索引 单值索引 唯一索引 组合索引(复合索引) 全文索引(仅在M ...

  6. mysql数据库历史语句提取_如何从MySQL数据库的不同表中提取创建语句?

    我想通过SHOW CREATE TABLE db.table或SHOW CREATE TABLE db1.mytableor提取我的50个MySQL数据库中的所有创建语句SHOW CREATE TAB ...

  7. MySQL数据库之单表查询--示例

    注释.*.条件查询.as取别名.比较-逻辑-算术运算符. and.or.模糊匹配(%._)--示例 1 /* 2 sql中有三种注释方式: 3 1.#:单行注释 4 2.--:代表单行注释,横杠后面要 ...

  8. python操作mysql数据库一次执行多条SQL语句

    当我们进行接口自动化后会造成许多表造成数据,一条一条删除就得一次又一次的连接数据库~~~废话不多说,直接上干货 导入第三方库的方法 from pymysql.constants import CLIE ...

  9. mysql关键字使用顺序_MySQL数据库之单表查询中关键字的执行顺序

    MySQL数据库之单表查询中关键字的执行顺序 1 语法顺序 select distinct from where group by having order by limit 2 执行顺序 from ...

最新文章

  1. 为什么程序员要学GC
  2. 【BZOJ】2982 combination
  3. Xcode 6 allows VECTOR image assets… any idea how to use them?
  4. JQuery学习使用笔记 -- JQuery插件开发
  5. keepalived实现高可用nginx反向代理的简单案例
  6. 基于探究式教学法的计算机网络原理课程的教学改革与实践,基于探究式教学法的“计算机网络原理”课程的教学改革与实践分析...
  7. 【每日SQL打卡】​​​​​​​​​​​​​​​DAY 24丨找到连续区间的开始和结束数字【难度中等】​
  8. PostgreSQL统计信息的几个重要视图
  9. 关于用户自定义控件与引用该控件的页面之间的javascript脚本冲突
  10. 为什么我特别讨厌语音输入
  11. EasyClick 调用javaMD5加密
  12. App低代码开发的最终形态?APICloud可视化开发初体验
  13. ArchLinux安装配置及美化
  14. 男人来自火星 女人来自金星(约翰·格雷)
  15. 恶心的八皇后全解python版
  16. cpu满载寿命_CPU的使用寿命大概有多少年,多久迭代一次为佳?
  17. 【转】使用 HTML5 设计辅助功能
  18. C++ string substr()
  19. 七彩cms云转码_七彩CMS 2019云转码完全开源版本 程序源码带安装教程
  20. 【自定义控件】仿支付宝支付动画

热门文章

  1. 鸿蒙系统基于安卓是什么意思,华为鸿蒙系统基于安卓还是Linux呢?
  2. 两部门重磅发文:东部高校不得从中西部、东北地区挖人!
  3. SQLite 数据库安装、创建、增删改查(一)
  4. i春秋 MISC ReCreators
  5. HTML+CSS大作业——仿2021淘宝首页(1页) 大学生网页制作教程 表格布局网页模板 学生HTML静态水网页设计作业成品 简单网页制作代码 学生商城网页作品免费设计
  6. 计算机网络查看命令大全,Windows下查看电脑信息的常用命令整理
  7. 一文详解,移动应用帮助文档应该怎么设计?
  8. # 新冠假期 - 实习/面试经历分享(1)
  9. 工程师读史:张居正和胡林翼的另一面
  10. 快速排序每一趟的排序过程