数据库 表单运用

news/2025/3/16 2:08:59/文章来源:https://www.cnblogs.com/qq3074699547/p/18504202

一、进入数据库操作界面
1、mysql -u root -p 敲回车 ,输入密码 ,进入数据库操作界面
2、show databases 查看所有的数据(如果没有数据库:创建数据库 create database 库名称)
3、use 数据库名 使用数据库
4、show tables 显示库中的所有表
5、建表语句
格式: create table 表名(字段名1 字符类型(字符长度),字段名2 字符类型(字符长度));
案例:create table aa(id int(10),name varchar(20));
6、查看表结构:
desc 表名
7、在navicat 中=点击库名点击查询新建查询===在新建查询中输入sql语句


8、插入数据:
(1)插入方式一:
格式:INSERT INTO 表名 VALUES(值1,值2);

(2)插入方式二:(插入部分字段)
格式:INSERT into 表名(字段名) VALUES(字段值)
案例:INSERT into aa(id) VALUES("4")
(3)插入的中文字符变成?号
解决方案:
在建表时的语句后面添加:
DEFAULT charset=utf8;

9、删除表格
drop table 表名

二、数据类型
1、数值类型
int 存储类型
float 浮点数

2、字符类型
char
varchar

3、时间类型
date
time
datetime
year

约束:
约束用于对表中字段进行限制,保证表中数据的正确性和唯一性
1、primary key 主键约束
非空,唯一,用于唯一标识的记录,类似身份证。
一个表中只用一个主键

2、not null 非空约束

3、 unique 唯一索引
保证字段值具有唯一性,并且能为空,一个表中可以有多个唯一索引

4、default 默认值约束
定义:默认给字段指定默认值

5、auto_increment 自增长约束(一般都是和主键同时使用)
作用:在整数类型,字段默认值从1开始自增
(1)一般和主键约束一起使用,主要针对id
(2)每插入一条数据,就是在字段上自动+1,

2、add 添加字段
格式:ALTER TABLE 表名 add 字段名 字符类型(字符长度);
案例:ALTER TABLE student2 add dcs int(20);

3、change 修改字段
格式:ALTER TABLE 表名 change 旧字段名 新字段名 字符类型(字符长度);
案例:ALTER table student2 change dcs hzdcs int(19);

4、 drop 删除字段
格式:ALTER table 表名 drop 字段名 ;
案例:ALTER table student2 drop hzdcs ;

5、rename 修改表名

6、modify after 字段的调换
格式:ALTER table 表格 MODIFY 变动的字段 字段类型(字段长度) after 指定字段 ;
案例:ALTER table hz MODIFY math int(10) after id ;

7、first 添加字段到第一位
格式:alter table 表名 add 表字段 字符类型(字符长度) first ;
案例:alter table hz add no int(20) first ;

数据库汇中:增、删、改、查

一、查询语句:
(1)查询一个表中的所有数据
格式:select * from 表名 ; * 表示所有的字段
案例:select * from hz ;
(2)查询部分字段(多个字段用,分割)
格式:select 字段1,字段2 from hz ;
案例:select id,name from hz ;

(3)查询字段可以通过as 取别名
格式:
案例1( as写,):
select id as " 编号",name as "姓名" from hz ;
案例2(可以省略 as不写):
select id " 编号",name "姓名" from hz ;

(4)指定条件查询内容:
where +条件
条件1:
比较运算:>,<,=,!=,<>,>=,<=
条件2:
and ,or ,between ....and ,in , is not null
案例1:= 等于
select id ,name from hz where id=1;
案例2:> 大于
select id ,name from hz where id>1;
案例3:<小于
select id ,name from hz where id<2;
案例4:<=小于等于
select id ,name from hz where id<=2;
(5)
案例5:>=大于等于
select id ,name from hz where id>=2;
(6)!=不等于
案例6:select id ,name from hz where id != 2;
(7)<>不等于
select id ,name from hz where id <> 2;

8)and 同时满足条件
案例8; and 是同时满足多个条件
select id ,name,math from hz where id > 2 and math>90;
(9)or 只要满足其中一个条件 就显示
select id ,name,math from hz where id > 6 or math>90;
(10)between 。。。and 在什么范围之间
案例:select * from hz where id BETWEEN 3 and 6 ;
备注:包含了本身,
(11)in 在一组数据中选择(在数据汇总匹配)
案例:select * from hz where id in (1,3,8)
(12)not in 不在一组数据中选
案例:select * from hz where id NOT in (1,3,8)
(13)is null 为空的数据
select * from hz where class is null;
(14)is not nu 不为空的数据
select * from hz where class is not null;

order by 排序
(1)降序 (大到小)
order by desc
案例:select * from hz order by id desc ;

(2)升序(小到大)
asc 或不写
案例:
select * from hz order by id asc ;
select * from hz order by id ;
(3)二次排序
案例:select * from hz order by math desc ,id desc;

like 模糊匹配查询
%:表示匹配1个字符或多个字符
_ : 下滑线表示一个字符
案例1:匹配xx开头的数据
select * from hz where math like "7%"; # 匹配7开头的数据
案例2:匹配xx结尾数据
select * from hz where math like "%7"; #匹配7结尾的数据
案例3:匹配含有xx结尾数据
select * from hz where math like "%7%"; #匹配含有7的数据
案例4:匹配指定位数的数据
select * from hz where math like "7_"; #匹配具体位数的数据

limit (索引位,步长) 显示指定的数据,限制;
根据索引位置来取值,从0开始,一个表第一行的索引就是0,第二行就是1
select * from hz limit 2; #表示取两行数据, 2 表示步长
select * from hz limit 1,2#表示从索引1开始第二行,2表示步长2行
select * from hz limit 4,3 ;# 表示从索引4开始取值,第五行开始,取三行,

sql 聚合函数
max 最大数
案例1:select max(math) from hz ;
min最小数
案例2:select min(math) from hz ;
avg 平均值
案例3:
select avg(math) from hz ;
sum 求和
案例4:
select sum(math) from hz ;
count 统计
案例5:select count(math) from hz ;
distinct 去重
案例6:
select DISTINCT(math) from hz ;

group by ....... having
group by 是分组,一般不会单独使用,通常和聚合函数组合使用
案例1:分组
select sum(math),class from hz GROUP BY class ;
案例2:分组 在条件 having
(1)select sum(math) s,class from hz GROUP BY class having s>200 ;
2)select sum(math) s,class from hz GROUP BY class having sum(math)>200 ;
注意:having 一般接在group by 后面

改:
update ......set......
格式:update 表名 set 字段名=新值 where条件;

删除:
(1)delete
格式:DELETE from 表名 where 条件;
DELETE from hz where id=1;
(2) truncate 快速删除数据
格式:
truncate 表名 ;
案例:
truncate ff ;
(3)drop 删除
格式:drop table 表名
案例:drop table emp ;
drop >truncate> delete

单行注释:ctrl +/
取消注释:shift+ctrl+/
多行注释:选中多行 ,ctrl +/
取消注释:选中多行 shift+ctrl+/

备份:
(1)备份表结构:
格式:create table 新表名 like 旧表名;
create table emp_new like emp;

(2)备份表数据
格式:
INSERT into 新表结构 select * from 旧表有数据 ;
(3)备份部分数据
格式:INSERT into 表名(字段1,字段2) select 字段1,字段2 from 旧表 ;

(4)备份表结构和数据
格式:
create table 新表 as (select * from 原表);

在linux 中:
备份:
格式:mysqldump -u root -p 原库>新sql脚本名
案例:mysqldump -u root -p hz017>/home/hz17.sql
还原:
格式:mysql -u root -p 新库<备份好的脚本
案例:mysql -u root -p new</home/hz17.sql

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

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

相关文章

Cypress实现拖拽

使用Cypress内置的trigger方法实现拖拽一个元素到另一个同类型元素,实现排序Typescript实现方法: export function dragAndDrop(sourceLocator: string, targetLocator: string) {const dataTranferMock = { setData: () => {}, setDragImage: () => {} }cy.get(source…

js逆向实战之某市场监管公告服务平台返回数据解密

声明:本篇文章仅用于知识交流分享,不用于其他用途 练习网站:https://jzsc.mohurd.gov.cn/data/company 解密过程分析访问网站,随便选择一个区域,点击查询,看触发哪些数据包。只有一个数据包,且其响应数据一看就是经过加密的。 有经验的人就会条件反射是拦截器,全局搜索…

本博客只为个人提供学习和使用提供内容经供参考

本博客只为个人提供学习和使用提供内容经供参考!!!

Lift-Splat-Shoot 复现

我理解的复现,就是把代码跑通,完整训练一遍,然后测试,争取达到论文里报告的效果。虽然大部分工作复现出来可能都到不了论文里的性能,比较玄学。 概述 Lift-Splat-Shoot (LSS) 是 BEV 方法的开山之作,作者来自 NVIDIA。该方法是一个纯视觉的感知方法,用来做 BEV 分割任务…

答题判题程序1~3总结性Blog

前言:总结三次题目集的知识点、题量、难度等情况 答题判题程序1 1.知识点 输入输出处理: 解析输入格式,包括题目数量、题目信息和答题信息。 按行处理输入内容,确保题目顺序和编号的独立性。 字符串解析与匹配: 需要识别并提取指定格式中的题号、题目内容、标准答案和用户…

minio 多节点部署

先决条件 firewalld 配置 firewall-cmd --permanent --zone=public --add-port=9000/tcp firewall-cmd --reload 节点说明 cat >> /etc/hosts << EOF 192.168.174.100 minio-01 192.168.174.101 minio-02 EOF 挂载点 mkdir -pv /data/disk1/minio mkdir -pv /dat…

gdal部署及java调用详细过程(linux版本-ubuntu)

建议gdal用3.5.3前的版本,因为目前网上大部分文章都是适用这个版本之前的编译方法 一、gdal部署 1)安装gcc 通过系统包管理器安装 sudo apt install gcc gcc --version 2)安装g++ 通过系统包管理器安装 sudo apt install g++ g++ --version 3)安装Ant 通过系统包管理器安装…

KBJ2510-ASEMI整流桥KBJ2510参数、封装、尺寸

GBJ2510-ASEMI整流桥GBJ2510参数、封装、尺寸编辑:ll KBJ2510-ASEMI整流桥KBJ2510参数、封装、尺寸 型号:KBJ2510 品牌:ASEMI 封装:KBJ-4 批号:2024+ 现货:50000+ 最大重复峰值反向电压:1000V 最大正向平均整流电流(Vdss):25A 功率(Pd):大功率 芯片个数:4 引脚数量:…

NS3安装

下载压缩包,解压 发现是直接打包好的虚拟机VMware打开vmx文件是一个ubantu系统 在root的家目录下发现有一个打包好的ns3的tar.bz2文件,解压 sudo tar -jxvf ns-allinone-3.33.tar.bz2不sudo也可以解压到当前目录,进入文件夹 cd ns-allinone-3.33 ls -a发现有一个build.py文件…

发电机过速诊断研究 - 基于LSTM进行状态监测

发电机过速诊断研究 思路 输入是选择的20个特征,切片长度为6,即 \(x \in \mathbb{R}^{6 \times 20}\)。 输出是 0-1,1表示故障,0表示正常,使用 MSELoss。 模型 双层 LSTM + Linear 结果看起来效果很不好。

DataGrip 2024.2.2 最新安装教程(附激活-2099年~)

下载 DataGrip 2024.2.2 版本的安装包。下载补丁https://pan.quark.cn/s/fcc23ab8cadf检查免责声明:本文中的资源均来自互联网,仅供个人学习和交流使用,严禁用于商业行为,下载后请在24小时内从电脑中彻底删除。对于因非法使用而引起的版权争议,与作者无关。所有资源仅供学…