数据库从入门到精通(一)数据库基础操作

mysql数据库基础操作

      • cmd下启动mysql
      • 数据库操作命令
      • 数据库重要的删除操作
      • 数据库增删改查操作
        • 插入数据
        • 更新数据
        • 删除数据
        • 查询数据
          • 查询指定记录
          • in查询满足指定范围之内的条件记录
          • not in查询不在指定范围之内的条件记录
          • 带between and 的范围查询
          • 带like的字符匹配查询(d%以d开头,%d以d结尾,%d%包含d的,d%y以d开头以y结尾)
          • 查询空值
          • 带and的多条件查询
          • 带OR的多条件查询
          • 查询结果不重复
          • 查询结果排序 (order by默认升序 desc降序 asc升序)
      • limit限制查询(从那行开始,走多少行)
      • 创建表的约束条件

cmd下启动mysql

1.net start mysql 启动mysql服务

2.net stop mysql 关闭mysql服务

3.mysql -h 127.0.0.1 -u root -p 打开mysql输入密码

数据库操作命令

查看当前所有的数据库 show databases

创建数据库 create database database_name

创建中文字符集的数据库 create database database_name charset utf8 collote utf8_general_ci

使用这个数据库 use database_name

查看当前所有的表 show tables

新建数据表 create table table_name

在这里插入图片描述

修改表名 alert table <旧表名> rename <新表名>

修改字段数据类型 alert table <表名> modify <字段名> <数据类型>

修改字段名 alert table <表名> change <旧字段名> <新字段名> <数据类型>

添加字段 alert table <表名> add <新字段名><数据类型>

表的第一列添加字段 alert table <表名> add <字段名> <数据类型> first

表的指定列添加字段 alert table <表名> add <字段名> <数据类型>after name

修改字段位置 alert table <表名> add <字段名> <数据类型>first

修改字段位置在指定列之后 alert table <表名> add <字段名> <数据类型>after name

数据库重要的删除操作

删除数据库 drop database 数据库名称

删除数据表 drop table 数据表名称

删除数据表中的内容 delete from table_name where 条件

删除字段 alert table table_name drop 字段名

数据库增删改查操作

插入数据

insert into table_name (column_list) values (values_list);

insert into student (id,name,age ,sex) values (20190321,‘李阳’,24,‘男’);

同时插入多条数据

insert into table_name (column_list) values (values_list),(values_list),(values_list)

insert into student (name,age) values (‘李阳’,24),(‘李阳’,24),‘李阳’,24);

将查询结果插入表中

insert into table_name (column_list) select column_list from table_name where 条件

insert into student (di,name,age,sex) select id,name,age,sex from person

将多表查询结果插入表中

insert into student (id,name,age,sex)

                          select id,name,age,sex from person 1union allselect id,name,age,sex from person 2
更新数据

update table_name set column_name 1=value 1,

                                  column_name 2=value 2,column_name 3=value 3where   条件语句

update table_name set age=15,

                                    name='李阳',sex='男'where   id=11
删除数据

delete from table_name where 条件语句

delete from student where id=11;

delete from student where age between 15 and 20;

查询数据

select * from table_name

查询指定记录

select 字段1,字段2 ,字段3 from student where 条件语句

select id,name,age,sex from student where class=2;

in查询满足指定范围之内的条件记录

select 字段1,字段2 ,字段3 from student where 字段 in(范围) order by 字段

select id,name,age,sex from student where class in (2,3) order by name;

not in查询不在指定范围之内的条件记录

select id,name,age,sex from student where class not in (2,3) order by name;

带between and 的范围查询

select id,name,age,sex from student where class between 2 and 5;

带like的字符匹配查询(d%以d开头,%d以d结尾,%d%包含d的,d%y以d开头以y结尾)

select id,name,age,sex from student where name like “李%”;

select id,name,age,sex from student where name like “李%阳”;

查询空值

@is not null

select id,name,age,sex from student where name is not null;

@is null

select id,name,age,sex from student where name is null;

带and的多条件查询

select name,age,sex from student where id=100 and id=200;

带OR的多条件查询

select name,age,sex from student where id=100 or id=200;

查询结果不重复

select distinct name from student;

查询结果排序 (order by默认升序 desc降序 asc升序)

@单列排序

select name,age,sex from student order by name;

@多列排序

select name,age,sex from student order by name and age;

@指定排序方向

select name,age,sex from student order by name desc;

select name,age,sex from student order by age asc;

指定多列不同顺序排列

select name,age,sex from student order by age asc,name desc;

分组查询(group by having)

@group by

select name,age,sex from student group by age;

@having过滤

select name,age,sex from student group by sex having age >22;

@with rollup

select name,age,sex from student group by sex with rollup;

@order by

select

         ordernumber,SUM(quantityOrdered)ASitemsCount,SUM(priceeach*quantityOrdered)AStotal

FROM orderdetails

GROUPBY ordernumber

HAVING total>55000

limit限制查询(从那行开始,走多少行)

select * from student limit 4 查询前四行

select * from student limit 4 ,3 从第四行开始向下三行

聚合函数查询

连接查询

as 字段别名

对mysql数据库新建一个user:

grant all on test.* to ‘alex’@‘%’ indentified by ‘root’;

查看新建user的权限

show grant for alex

创建表的约束条件

primary key

constraint 外键名 foreign key 字段名 references 主表名 主键列

not null 非空约束

unique 唯一性约束

default 默认值约束

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/469145.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何使用idea连通服务器上的Redis(详细版本)

这里我使用的是阿里云的服务器 打开阿里云的安全组&#xff0c;设置端口为6379 在redis.conf文件中&#xff0c;注释bind 127.0.0.1 将protected-mode设置为no&#xff0c;即关闭保护模式 更改服务器中的防火墙&#xff0c;放行6379端口 # 放行端口 firewall-cmd --zo…

【lesson53】线程控制

文章目录 线程控制 线程控制 线程创建 代码&#xff1a; 运行代码&#xff1a; 强调一点&#xff0c;线程和进程不一样&#xff0c;进程有父进程的概念&#xff0c;但在线程组里面&#xff0c;所有的线程都是对等关系。 错误检查: 传统的一些函数是&#xff0c;成功返回0&…

如何用 ChatGPT 做项目管理?

ChatGPT 可以通过创建和维护跨团队项目协作计划&#xff0c;让员工更容易理解他们的角色和职责。 这个协作计划里面会包括每个团队或个人要执行的具体任务&#xff0c;每个任务最后期限和任何事情之 间的依赖关系。 该场景对应的关键词库:(24 个) 项目管理、项目协作计划、跨…

CSRNET图像修复,DNN

CSRNET图像修复 CSRNET图像修复&#xff0c;只需要OPENCV的DNN

cool Node后端 中实现中间件的书写

1.需求 在node后端中&#xff0c;想实现一个专门鉴权的文件配置&#xff0c;可以这样来解释 就是 有些接口需要token调用接口&#xff0c;有些接口不需要使用token 调用 这期来详细说明一下 什么是中间件中间件顾名思义是指在请求和响应中间,进行请求数据的拦截处理&#xf…

2024幻兽帕鲁服务器创建教程_阿里PK腾讯超简单

幻兽帕鲁官方服务器不稳定&#xff1f;自己搭建幻兽帕鲁服务器&#xff0c;低延迟、稳定不卡&#xff0c;目前阿里云和腾讯云均推出幻兽帕鲁专用服务器&#xff0c;腾讯云直接提供幻兽帕鲁镜像系统&#xff0c;阿里云通过计算巢服务&#xff0c;均可以一键部署&#xff0c;鼠标…

FPGA转行ISP的探索之一:行业概览

ISP的行业位置 最近看到一个分析&#xff0c;说FPGA的从业者将来转向ISP&#xff08;Image Signal Process图像信号处理&#xff09;是个不错的选择&#xff0c;可以适应智能汽车、AI等领域。故而我查了一下ISP&#xff0c;对它大致有个概念。 传统的ISP对应的是相机公司&…

Ps:曝光度

曝光度 Exposure命令在处理图像时&#xff0c;尤其是针对 32 位 HDR 图像&#xff0c;通常在线性颜色空间&#xff08;即灰度系数为 1.0&#xff09;中执行计算&#xff0c;这意味着它对图像的亮度进行直接和线性的调整。 这种处理方式特别适合处理高动态范围内容&#xff0c;因…

JavaScript中的常见算法

一.排序算法 1.冒泡排序 冒泡排序比较所有相邻的两个项&#xff0c;如果第一个比第二个大&#xff0c;则交换它们。元素项向上移动至 正确的顺序&#xff0c;就好像气泡升至表面一样。 function bubbleSort(arr) {const { length } arrfor (let i 0; i < length - 1; i)…

算法学习——LeetCode力扣回溯篇2

算法学习——LeetCode力扣回溯篇2 40. 组合总和 II 40. 组合总和 II - 力扣&#xff08;LeetCode&#xff09; 描述 给定一个候选人编号的集合 candidates 和一个目标数 target &#xff0c;找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的每个数字…

【树莓派系统的位数】

要区分 ARM 架构下载的版本是 32 位还是 64 位&#xff0c;可以执行以下步骤&#xff1a; 执行以下命令来检查 Raspberry Pi 的 CPU 类型&#xff1a; uname -m如果返回的结果是 aarch64&#xff0c;则表示您的 Raspberry Pi 是 64 位的 ARM 架构。如果返回的结果是 armv7l&a…

【小记】MacOS Install golang

问题 - command not found: go ➜ brew install golang ➜ go version go version go1.21.7 darwin/arm64写在最后&#xff1a;若本文章对您有帮助&#xff0c;请点个赞啦 ٩(๑•̀ω•́๑)۶