二:MySQL系列之SQL基本操作(二)
本篇主要介绍SOL语句的基本操作,主要有分为 连接数据库,创建数据库、创建数据表、添加数据记录,基本的查询功能等操作。
一、针对数据库的操作
-- 1、连接数据库
mysql -uroot -p
mysql -uroot -ppassword -- 2、退出数据库
exit/quit/ctrl+d -- 3、显示数据库版本,显示时间
select version();
select now(); -- 4、查看当前RDBMS管理的所有数据库
show databases; -- 5、创建数据库 --information
create database information;
create database information charset=utf8; --指定编码 -- 6、查看创建数据库的详细信息
show create database information; -- 7、查看当前使用的数据库
select database(); -- 8、使用数据库
use information; -- 9、删除数据库(慎用)
drop database heros;
二、针对数据表的操作
------ 创建表,和查看表的结构------ -- 1、查看当前数据库中所有的表
show tables; -- 2、创建表的字段 类型(主键等)限制等--
-- 创建一个存放英雄信息的数据表
create table heros(
id int unsigned primary key auto_increment not null,
name varchar(20),
age tinyint unsigned default 0,
height decimal(5,2),
gender enum("男","女","其他") default "其他",
prov_id int unsigned,
is_delete bit default 0
); -- 创建一个存放名著
create table famous_books(
id int unsigned primary key not null auto_increment,
name varchar(30) not null,
author varchar(20)
); -- 3、查看表的结构
desc heros -- 4、查看创建表的详细信息
show create table heros; -- 5、创建表的值
insert into heros values(0,"曹操",35,178.35,"男",1,0);
insert into heros values(0,"刘备",45,175.32,"男",1,0),
(0,"孙权",28,182.63,"男",1,0),
(0,"貂蝉",20,175.22,"女",1,0),
(0,"孙夫人",45,168.11,"女",1,0),
(0,"宋江",48,178.01,"男",2,0),
(0,"吴用",36,170.12,"男",2,0),
(0,"黑寡妇",25,172.01,"女",2,0),
(0,"贾宝玉",21,177.23,"男",3,0),
(0,"林黛玉",19,165.32,"女",3,0),
(0,"薛宝钗",19,168.55,"女",3,0); insert into famous_books values(0,"《水浒传》","施耐庵"),
(0,"《三国演义》","罗贯中"),
(0,"《红楼梦》","曹雪芹"); -- 6、查看表的结构
select * from heros;
select * from famous_books; -- 得出的结果为:
+----+-----------+------+--------+--------+---------+-----------+
| id | name | age | height | gender | prov_id | is_delete |
+----+-----------+------+--------+--------+---------+-----------+
| 1 | 曹操 | 35 | 178.35 | 男 | 1 | |
| 2 | 刘备 | 45 | 175.32 | 男 | 1 | |
| 3 | 孙权 | 28 | 182.63 | 男 | 1 | |
| 4 | 貂蝉 | 20 | 175.22 | 女 | 1 | |
| 5 | 孙夫人 | 45 | 168.11 | 女 | 1 | |
| 6 | 宋江 | 48 | 178.01 | 男 | 2 | |
| 7 | 吴用 | 36 | 170.12 | 男 | 2 | |
| 8 | 黑寡妇 | 25 | 172.01 | 女 | 2 | |
| 9 | 贾宝玉 | 21 | 177.23 | 男 | 3 | |
| 10 | 林黛玉 | 18 | 165.32 | 女 | 3 | |
| 11 | 薛宝钗 | 19 | 168.55 | 女 | 3 | |
| 12 | 薛宝钗 | 20 | 168.23 | 女 | 3 | |
| 13 | 武松 | 26 | NULL | 其他 | NULL | |
| 14 | 孙权 | 21 | 182.22 | 男 | 1 | |
+----+-----------+------+--------+--------+---------+-----------+
14 rows in set (0.00 sec) -- 注:里面的值有所添加
三、针对数据表字段的操作
-------- 修改表的结构,即字段的操作 alter-------- -- 1、-添加字段--
alter table heros add birthday datatime; -- 2、修改字段 - 修改字段的约束
alter table heros modify brithday date; -- 3、修改字段,修改字段名---
alter table heros change brithday birth date default "1996-01-01"; --注后面必须写上限制
-- alter table heros change brithday birth; 错误 -- 4、删除字段
alter table heros drop birth;
-- drop database information; --删除数据库
-- drop table heros; -- 删除数据表
注:针对表头(字段)的操作均为 alter table ;
四、针对值的操作(记录)
------------针对值;增删改查(curd)-----------------
--增加--
--全列插入--
insert into heros values(0,"赵子龙",23,185.62,"男",1,0);
--同时插入多个
insert into famous_books values(0,"《西游记》","吴承恩"),(0,"《老人与海》","海明威");
--主键字典key用0,null,default占用
insert into heros values(null,"赵子龙",23,185.62,"男",1,0);
insert into heros values(default,"赵子龙",23,185.62,"男",1,0);
--枚举中的 下标使用
insert into heros values(0,"赵子龙",23,185.62,1,1,0);
--部分插入,其他的设置默认值,没有默认值设置系统默认值
insert into heros (name,age,gender) values("张飞",35,1);
-- 若插入枚举中不存在的,则报错;
--insert into heros (name,age,gender) values("张飞",35,"人妖"); --报错
--修改
-------------修改对应字段的值----------------
update famous_books set name="《小黄书》"; -- 全部修改为name为《小黄书》;
update classes set name="《聊斋》" where id =3; --指定id=3的修改为《聊斋》;
update hero set age=22,gender="男" where id=2; --可以同时修改两个值;
--查询
--查询所有列
--select * from 表名
select * from heros;
--定条件查询 --where
select * from hreos where name="张飞"; --只查看 名字为张飞的所有信息
select * from heros where id>3; --查看id>3的信息
--查询指定列
select name,age,gender form hreos;
--使用as作为列或者表的别名
select name as 姓名,age as 年龄, gender as 性别 from heros;
--删除
-- 物理删除 delete from XXX
delete from heros; --整个 数据表中所有的数据均删除
delete from heros where name="关羽"; --删除所有名字为关羽的记录
-- 逻辑删除 即用一个字段来表示,这条信息是否已经不使用
alter table famous_books add is_delete varchar(1) default 0;
update amous_books set is_delete=1 where id =2;
over~~~ 本篇主要为命令~~~~~需要理解的比较少,找到规律多练即可~~~
二:MySQL系列之SQL基本操作(二)的更多相关文章
- MySQL系列(七)--SQL优化的步骤
前面讲了如何设计数据库表结构.存储引擎.索引优化等内存,这篇文章会讲述如何进行SQL优化,也是面试中关于数据库肯定会被问到的, 这些内容不仅仅是为了面试,更重要的是付诸实践,最终用到工作当中 之前的M ...
- Mysql系列一:SQL入门
csdn博客搬迁 连接数据库:1.在dos窗口下,进入数据库的安装目录的bin目录下,使用mysqld命令启动数据库服务,或者在计算机的服务里面启动mysql服务2.另外打开一个dos窗口,进入数据库 ...
- mysql系列-⼀条SQL查询语句是如何执⾏的?
⼀条SQL查询语句是如何执⾏的? ⼤体来说,MySQL 可以分为 Server 层和存储引擎层两部分 Server 层 Server 层包括连接器.查询缓存.分析器.优化器.执⾏器等,涵盖 MySQL ...
- 三:MySQL系列之SQL查询
本篇主要介绍使用SQL查询数据库的操作,包括条件查询.排序.聚合函数.分组.分页.连接查询.自关联.子查询等命令操作. 首先我们先创建一个数据库.数据表.插入字段: --------这部分在上篇以及介 ...
- MySQL系列:数据库基本操作(1)
1. 登录数据库 mysql -h localhost -u root -p 2. 数据库基本操作 2.1 查看数据库 mysql> SHOW DATABASES; +------------- ...
- MySQL系列:视图基本操作(3)
1. 视图简介 1.1 视图定义 视图是一种虚拟的表,是从数据库中一个或多个表中导出来的表. 视图可以从已存在的视图的基础上定义. 数据库中只存放视图的定义,并没有存放视图中的数据,数据存放在原来的表 ...
- 二十二、oracle pl/sql分类二 函数
函数用于返回特定的数据,当建立函数时,在函数头部必须包含return子句.而在函数体内必须包含return语句返回的数据.我们可以使用create function来建立函数. 1).接下来通过一个案 ...
- MySQL系列:索引基本操作(4)
1. 索引简介 索引是一种特殊的数据库结构,可以用来快速查询数据中的特定记录. MySQL中索引包括:普通索引.唯一性索引.全文索引.单列索引.多列索引和空间索引等. 1.1 索引定义 索引由数据库表 ...
- mysql系列3 SQL语法基础
1.创建数据库(语法) 2.创建(数据库)表(语法) 复制新的空表举个例子: mysql> use course;Reading table information for completion ...
随机推荐
- 配置ssh免密,仍需要密码
配置ssh免密码登录后,仍提示输入密码 解决方法: 首先我们就要去查看系统的日志文件 tail /var/log/secure -n 20 Authentication refused: bad ...
- Python - Django - 封装分页成通用的模块
新建 utils 文件夹,并创建 page.py page.py: class ShowPage(object): def __init__(self, page_num, total_count, ...
- centos 7 修改计算机名
[root@centos7 ~]$ hostnamectl set-hostname test.xyz.com # 使用这个命令会立即生效且重启也生效 [root@centos7 ~]$ host ...
- mssql的update :from语法
一条Update更新语句是不能更新多张表的,除非使用触发器隐含更新.而表的更新操作中,在很多情况下需要在表达式中引用要更新的表以外的数据.我们先来讨论根据其他表数据更新你要更新的表 一.MS S ...
- 【Leetcode_easy】868. Binary Gap
problem 868. Binary Gap solution1: class Solution { public: int binaryGap(int N) { ; vector<int&g ...
- 【Leetcode_easy】849. Maximize Distance to Closest Person
problem 849. Maximize Distance to Closest Person solution1: class Solution { public: int maxDistToCl ...
- Docker快速入门——Docker-Compose
一.Docker-Compose简介 1.Docker-Compose简介 Docker-Compose项目是Docker官方的开源项目,负责实现对Docker容器集群的快速编排.Docker-Com ...
- 高性能最终一致性框架Ray之基本功能篇
一.Event(事件) Event是Actor产生的记录状态变化的日志,由StateId(状态Id),UID(幂等性控制),TypeCode(事件类型),Data(事件数据),Version(事件版本 ...
- CSS 常用效果--持续更新
单行超出省略: white-space: nowrap; text-overflow:ellipsis; overflow:hidden; 多行超出省略: text-overflow: -o-elli ...
- qt QML弹出新页面之后,如何屏蔽上一个页面的按钮区域事件
Rectangle{ //Rectangle是要显示的新页面 //增加一个mouseArea:,必须好把MouseArea作为第一个子元素,如果放在最后且不设置z属性的话,会覆盖其//他控件 Mous ...