MySQL基础之数据管理【1】
添加记录
insert [into] tbl_name[(col_name,...)] {value|values}(values...);
--不指定字段名称时需要按照建表时的字段顺序给每一个字段赋值
--插入多条数据用逗号隔开
insert tbl_name value(values...);
insert tbl_name set 字段名称=值,...;
insert tbl_name[(字段名称...)] select 字段名称,... from tbl_name [where 条件];
测试
create database if not exists king default character set 'utf8';
use king;
create table user(
id int unsigned auto_increment key comment '编号',
username varchar(20) not null unique comment '用户名',
age tinyint unsigned default 18 comment '年龄',
email varchar(50) not null default '325@qq.com' comment '邮箱'
)engine=innodb charset=utf8;
insert user value(1,'king',24,'12335@qq.com');
insert user value(null,'queen',20,'1235235@qq.com');
insert user(id,username) value(3,'wang');
create table if not exists user2(
name varchar(20) not null default 'aafd'
)engine=innodb charset=utf8;
insert user2 value('aaa'),
('bbb'),
('ccc');
修改记录
update tbl_name set 字段名称=值,字段名称=值,... [where 条件];
--如果不添加条件,整个表中的记录都会被更新
测试
update user set age=29 where id=1;
update user set username='黎明',age=1,email='111@qq.com' where id=3;
update user set age=age+10;
update user set age=age-5,email=default where id<=5;
删除记录
delete from tbl_name [where 条件]
--如果不添加条件,表中所有记录都会被删除
测试
delete from user where username='king';
delete from user where age>=23;
delete from user; --删除表中所有记录
alter table user auto_increment=1; --将auto_increment重置为1
truncate [table] tbl_name; --彻底将表清空
查询记录 select语句的基本形式
select select_expr,... from tbl_name [where 条件]
[group by {col_name|position} having 二次筛选]
[order by {col_name|position|expr} [asc|desc]]
[limit 限制结果集的显示条数];
select * from tbl_name; --查询表中所有记录 *所有字段
select 字段名称,... from tbl_name --指定字段的信息
select 字段名称 [as] 别名名称,... from db_name.tbl_name; --给字段起别名
select 字段名称,... from tbl_name [as] 别名; --给数据表起别名
select tbl_name.col_name,... from tbl_name; --表名.字段名
测试
create table user(
id int unsigned auto_increment key comment '编号',
username varchar(20) not null unique comment '姓名',
age tinyint unsigned not null default 18 comment '年龄',
sex enum('男','女','保密') not null default '保密' comment '性别',
addr varchar(20) not null default '北京',
married tinyint(1) not null default 0 comment '0代表未婚,1代表已婚',
salary float(8,2) not null default 0 comment '薪水'
)engine=innodb charset=utf8;
insert user values(1,'king',23,'男','上海',1,50000);
insert user(username,age,sex,addr,married,salary) values('queen',27,'女','上海',0,25000);
insert user set username='imooc',age=31,sex='女',addr='北京',salary=40000;
insert user values(null,'张三',38,'男','上海',0,15000),
(null,'张子枫',38,'男','上海',0,15000),
(null,'子怡',25,'女','北京',0,85000),
(null,'王菲',62,'女','广州',0,95000),
(null,'刘德华',14,'男','南京',0,115000),
(null,'吴亦凡',35,'男','上海',0,75000),
(null,'张阿文',14,'男','西安',0,65000),
(null,'经过历',25,'男','湖南',0,15000);
select * from user;
select username,addr,age from user;
select * from king.user; --不用打开数据库就可以查询指定的数据表
select id as 'id',username as '姓名' from user;
select id,username from user as u;
select user.id,user.username from user;
MySQL基础之数据管理【1】的更多相关文章
- MySQL基础之数据管理【4】
外键约束的使用(只有InnoDB存储引擎支持外键) create table news_cate( id tinyint unsigned auto_increment key comment '编号 ...
- MySQL基础之数据管理【3】
MySQL中的多表联查 --查询emp的id username age depName create table emp( id int unsigned auto_increment key, us ...
- MySQL基础之数据管理【5】
子查询的使用 select 字段名称 from tbl_name where col_name=(select col_name from tbl_name); --内层语句查询的结果可以作为外层语句 ...
- MySQL基础之数据管理【2】
where条件筛选记录 select id,username,age from uesr where id=5; alter table user add userDesc varchar(100); ...
- MySQL基础----py全栈
目录 MySQL基础----py全栈 一.引言 1.什么是数据? 2.什么是数据库(DB)? 3.什么是数据库管理系统(DBMS)? 4.什么是数据库系统? 5.数据库管理系统由来 6.什么是数据模型 ...
- 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 ...
随机推荐
- Python笔记:设计模式之状态模式
状态模式可以看做是在运行时改变对象行为的一种方式.状态模式允许对象在其内部状态变化时改变其行为,此时感觉就像对象本身已经改变了一样. 参与者: State接口:State基类,定义不同状态共同需要执行 ...
- Assign a Custom Image 设置自定义图标
In this lesson, you will learn how to associate a business class with a custom image. This image wil ...
- 7天教你精通变大神,学CAD关键还要掌握方法,纯干货新手要看
接触CAD初期是“痛苦”的,“煎熬”的,也是充满“成就”的. 痛苦是初学者怎么都不懂,需要学习的东西很多,整个过程是有些痛苦的. 煎熬也是每个求学阶段都会遇到的状态,眼睛会了,手不会,这个状态很难受. ...
- iOS多线程定时器
在使用定时器时,我们经常使用NSTimer,但是由于NSTimer会受RunLoop影响,当RunLoop处理的任务很多时,就会导致NSTimer的精度降低,所以在一些对定时器精度要求很高的情况下,应 ...
- PHP代码篇(六)--如何根据邀请人id查询满足条件的会员上级
说,如果有一个会员表,每一个会员都有一个邀请人from_id字段(记录该会员是谁邀请的),知道一个会员id,现在需要查询某一个会员是否是该会员的下级. 表如下: 一.当下需求 1.我们需要知道会员id ...
- 【poj2661】Factstone Benchmark(斯特林公式)
传送门 题意: 给出\(x,x\leq 12\),求最大的\(n\),满足\(n!\leq 2^{2^x}\). 思路: 通过斯特林公式: \[ n!\approx \sqrt{2\pi n}\cdo ...
- [Vue专题] 对比vue-cli2.x和vue-cli3.x的搭建
简介:深入了解脚手架vue-cli2.x版本与3.x版本构建项目的区别 搭建前提条件: node环境 node是傻瓜式安装的,直接去官网下载安装不断下一步 命令行输入node -v查询版本号,有版本号 ...
- 15-Django开发REST接口
使用Django开发REST接口 我们以在Django框架中使用的图书以及书中人物案例来写一套支持图书数据增删改查的REST API接口,来理解REST API的开发(前后端均发送JSON格式数据) ...
- EJB学习
EJB:企业级JavaBean(Enterprise JavaBean, EJB)是一个用来构筑企业级应用的服务器端可被管理组件. EJB主要有三种Bean: Session Beans: 会在单个特 ...
- Have a look ^_^
参考书籍: <重构 改善既有代码的设计 第2版>马丁 福勒著 人民邮电出版社 马丁 福勒的其他著作:<分析模式>,<UML精粹>,<领域特定语言> 目录 ...