当前位置: 首页 > news >正文

MySQL扩展语句

if not exists xiaobu:xiaobu这个表不存在,才会创建

zerofill:自动填充位置 1 0001

primary key:当前表的主键,主键只能有一个,而且唯一,而且不能为空

auto_increment:表示该字段可以自增长,默认从1开始,每条纪录会自动自增1

unique key:唯一性约束,跟主键不同,可以为空

CREATE TABLE test LIKE xiaobu;

复制,通过like这个语句直接复制xiaobu的表结构,只是复制表结构,不能复制表里面的数据

INSERT INTO test SELECT * FROM xiaobu;

把表名表里面的数据,复制到test,两个表数据机构一致

create table test1 (select * from xiaobu);

创建一张表,test1,数据从xiaobu来,表结构也是xiaobu;

删除表内的所有所有数据

delete truncate drop

delete from 表名;

delete 删除是一行一行删除,如果表中有自增长列,清空所有纪录之后,再次添加内容,会从原来的纪录之后继续自增写入

truncate table 表名;

清空表的数据,而且会把表结构重新建立,速度上比delete快,**推荐**

drop table 表名;

删除表不推荐

创建临时表

一用于调试,而且临时表示创建之后在表目录当中是不显示的

连接退出之后,临时表会被销毁,而且临时表无法创建外键

create temporary table 表名 (id int(4) primary key,name char(10),sex char(2),);

mysql 的约束方式

6种常用的约束

1、主键约束,用于唯一标识表中的每一行,主键列的值必须是唯一而且不能为空,一个表只能有一个主键

2、外键约束,用于建立表于表之间的关系,一般是和另一张的表的主键关键,保证数据引用的完整性,一个表可以有多个外键

3、非空约束,not null 必须要有一个值

4、唯一性约束,unique ,确保列中的所有值都是唯一的,类似于主键,但是可以为空,而且一个表可以有多个唯一约束

5、默认值约束。default,在插入表数据时,如果没有定义值,会提供一个默认值

6、自动约束,每行自动生成一个唯一标识,通常和主键在一起使用

创建主从表

主表

card_id int(18)设为主键

stu_name varchar(12) 非空

stu_email varchar(255) 可以为空,但不能重复

从表

stud_id int(11) 自增 主键

address varchar(50) 设置默认值

card_id 从表的外键连接主表的主键

主表和从表:

插入数据:先插入主表,再插入从表

删除数据:先删除主表,再删除从表

alter table class drop foreign key class_ibfk_1;
desc class;  查看表结构
mul:表示这个一个索引
alter table class drop index card_id;
alter table class drop primary key;
there can be only one autocolumn and it must be defined as a key
这是一个自增约束的主键,要先改变他的数据类,解除自增约束,之后主键才可以删除
alter table class modify stud_id int(12);
alter table class drop primary key;

习题

两张表

主表 company(公司)

从表 depart(部门)

company:

1、work_id 非空,主键int(4)不满四位要补齐

2、name 非空 char(5)

3、sex 非空 char(2)

depart:

1、de_id 非空 主键 int(6)不满六位要补齐

2、work_id 要和主表的work_id关联为外键

3、address 为空,但是有一个默认值

4、phone 不能为空而且不能相同

主
CREATE TABLE company (work_id int(4) zerofill primary key,name char(5) not null,sex char(2) not null
);
从
CREATE TABLE depart (de_id int(6) zerofill PRIMARY KEY,address VARCHAR(50) DEFAULT '地址不详',phone int(11) not null UNIQUE,work_id int(4) not NULL,FOREIGN KEY(work_id) REFERENCES company(work_id)
);
如果没有添加主键可以用
alter table depart add FOREIGN KEY (work_id) REFERENCES company(work_id);
增加主键
先删除主键
ALTER table depart drop PRIMARY key;
添加主键 
alter table depart add PRIMARY key;

两张表:

school

1、de_id int(4) 不满四位要补齐,而且自增长 主键

2、name varchar(15) not null

3、email varchar(45) 可以为空,而且有默认值 xiaobu@126.com

cloud_ky32

id 自增长 主键 int

class_name 不能为空

address 可以为空 ,默认是'地址不详'

phone int(11) 不能为空,而且不能重复

de_id要和主键关联

3、要求删除外键关联,删除从表的主键,重新定义主键为phone

CREATE table shcool (de_id int(4) ZEROFILL auto_increment PRIMARY KEY,name VARCHAR(15) not null,email VARCHAR(45) UNIQUE DEFAULT 'bdqnkgc@126.com'
);CREATE TABLE cloud_xiaobu (id int(4) auto_increment PRIMARY KEY,class_name VARCHAR(12) not null,address VARCHAR(255) DEFAULT '地址不详',phone int(11) NOT NULL UNIQUE,de_id int(4) ZEROFILL NOT NULL,FOREIGN KEY(de_id) REFERENCES shcool(de_id)
);
DESC cloud_xiaobu;ALTER TABLE cloud_xiaobu drop FOREIGN key cloud_xiaobu_ibfk_1;ALTER TABLE cloud_xiaobu MODIFY id int(5);ALTER TABLE cloud_xiaobu drop PRIMARY KEY;ALTER TABLE cloud_xiaobu ADD PRIMARY KEY(phone);
1、两张表:school 
de_id int(4) 不满四位要补齐,而且自增长 主键 
name VARCHAR(15) not NULL 
email varchar(45) 不可以为空,而且不能重复
money int 不可为空,不能重复CREATE TABLE school (de_id int(4) ZEROFILL auto_increment PRIMARY KEY,name VARCHAR(15) NOT NULL,email VARCHAR(45) NOT NULL UNIQUE,money INT(255) NOT NULL UNIQUE
);
DESC school;2、cloud_ky32 
id 自增长 主键 int 
class_name 不能为空。 
de_id 外键,外键和主表的主键关联。 
adress 可以为空,默认是'地址不详' 
phone int 不能为空,而且不能重复。CREATE TABLE cloud_xiaobu (id int(4) auto_increment PRIMARY KEY,class_name VARCHAR(12) NOT NULL,address VARCHAR(255) DEFAULT '地址不详',phone INT(11) NOT NULL UNIQUE,de_id INT(4) ZEROFILL,FOREIGN KEY(de_id) REFERENCES school(de_id)
);3、分别在两张表中插入10条数据 主表
insert into school values (1,'xiaobu1','1','1');
insert into school values (2,'xiaobu2','2','2');
insert into school values (3,'xiaobu3','3','3');
insert into school values (4,'xiaobu4','4','4');
insert into school values (5,'xiaobu5','5','5');
insert into school values (6,'xiaobu6','6','6');
insert into school values (7,'xiaobu7','7','7');
insert into school values (8,'xiaobu8','8','8');
insert into school values (9,'xiaobu9','9','9');
insert into school values (10,'xiaobu10','10','10');从表
insert into cloud_xiaobu values (1,'xiaobu1','1','1',1);
insert into cloud_xiaobu values (2,'xiaobu2','2','2',2);
insert into cloud_xiaobu values (3,'xiaobu3','3','3',3);
insert into cloud_xiaobu values (4,'xiaobu4','4','4',4);
insert into cloud_xiaobu values (5,'xiaobu5','5','5',5);
insert into cloud_xiaobu values (6,'xiaobu6','6','6',6);
insert into cloud_xiaobu values (7,'xiaobu7','7','7',7);
insert into cloud_xiaobu values (8,'xiaobu8','8','8',8);
insert into cloud_xiaobu values (9,'xiaobu9','9','9',9);
insert into cloud_xiaobu values (10,'xiaobu10','10','10',10);4、 在第二张表中增加一列,hobby。alter table cloud_xiaobu add hobby varchar(12);5、修改主表的name类型为char(15)alter table school modify column name char(15);
DESC school;6、更改cloud_xiaobu的表名,为xiaobualter table cloud_xiaobu rename xiaobu;7、修改 hobby的列名,改为hobalter table xiaobu change hobby hob varchar(12);8、通过命令行,把主表的第一行的money的初始值1000,变成900update school set money='900' where de_id = 1;

相关文章:

MySQL扩展语句

if not exists xiaobu:xiaobu这个表不存在,才会创建 zerofill:自动填充位置 1 0001 primary key:当前表的主键,主键只能有一个,而且唯一,而且不能为空 auto_increment:表示该字段…...

阿里云号码认证服务(一键登录)在连接wifi的情况下部分机型下存在的问题

手机型号: vivo S16 存在的现象: 安装手机卡(联通卡),且连接wifi的情况下,APP登录唤起阿里云一键登录服务大概有90%左右必超时(按照阿里云一键登录官方文档设置的超时时间为5秒)。 解决方案: 1、APP端增加超时判断&…...

电脑屏幕监控软件,能够帮助企业完成哪些事情?

电脑屏幕监控软件是一种能够监控和管理员工在电脑上的操作行为的软件。分为两种监控方式:实时监控和屏幕记录监控。实时监控是对电脑屏幕进行实时录像,屏幕记录监控则是以屏幕快照的形式保存下来,供使用者随时查看。电脑屏幕监控软件&#xf…...

java--方法的其他形式

1.方法定义时:需要按照方法解决的实际业务需求,来设计合理的方法形式解决问题。 1.注意事项 ①如果方法不需要返回数据,返回值类型必须申明成void(无返回值申明),此时方法内部不可以使用return返回数据。 ②方法如果不需要接收数…...

IDEA配置类、方法注释模板

一、打开 IDEA 的 Settings,点击 Editor–>File and Code Templates,点击右边 File 选项卡下面的 Class,在其中添加图中红框内的内容: /** * author li-kun * date ${YEAR}年${MONTH}月${DAY}日 ${TIME} */当你创建一个新的类…...

PowerDesigner 16数据库(mysql)逆向生成pdm

1、配置数据源 2、测试数据源 but~~~~没成功,shift...

Spring Cloud 之Feign

前言 Feign是一个声明式的Web服务客户端,使得编写HTTP客户端变得更简单。在Java程序中,只需要在方法前加上FeignClient注解,Feign就会自动创建一个HTTP客户端,向指定的URL发送请求。 核心概念 1、注解:在服务接口方…...

通用开源自动化测试框架 - Robot Framework

一、什么是 Robot Framework? 1. Robot Framework 的历史由来 Robot Framework是一种通用的自动化测试框架,最早由Pekka Klrck在2005年开发,并由Nokia Networks作为内部工具使用。后来,该项目以开源形式发布,并得到了…...

css position属性与js滚动

“视口”就是浏览器窗口中实际显示文档内容的区域,不包含浏览器的“外框”,如菜单、工具条和标签。文档则是指整个网页。 1 css 的position static 正常定位,是元素position属性的默认值,元素遵循常规流。 relative 相对定位&…...

python内置模块hashlib对于字符串的加密解密加盐

hash是一类算法而hashlib模块是Python的一个内置模块,主要功能是使用对应的hash算法,加密二进制内容解密二进制内容 常见的hash算法有md5、sha1,sha256, sha512等 特点 1.内容敏感,那怕一个很小的字符发生改变都很明显 2.不可逆,不能逆向求值…...

获取客户端请求IP及IP所属城市

添加pom依赖 <dependency> <groupId>org.lionsoul</groupId> <artifactId>ip2region</artifactId> <version>2.6.5</version> </dependency> public class IpUtil { private…...

【洛谷 P1106】删数问题 题解(贪心+字符串)

删数问题 题目描述 键盘输入一个高精度的正整数 N N N&#xff08;不超过 250 250 250 位&#xff09;&#xff0c;去掉其中任意 k k k 个数字后剩下的数字按原左右次序将组成一个新的非负整数。编程对给定的 N N N 和 k k k&#xff0c;寻找一种方案使得剩下的数字组成…...

【Python · PyTorch】线性代数 微积分

本文采用Python及PyTorch版本如下&#xff1a; Python&#xff1a;3.9.0 PyTorch&#xff1a;2.0.1cpu 本文为博主自用知识点提纲&#xff0c;无过于具体介绍&#xff0c;详细内容请参考其他文章。 线性代数 & 微积分 1. 线性代数1.1 基础1.1.1 标量1.1.2 向量长度&…...

建模和图表工具:Software Ideas Modeler Crack

用于图表、软件设计和分析的 CASE 工具 Software Ideas Modeler 是一款智能CASE 工具和 图表软件&#xff0c;支持 UML、SysML、ERD、BPMN、ArchiMate、流程图、用户故事、线框图。 提升用户体验和人工智能集成 - Software Ideas Modeler 14.05 最近发布的 14.05 版本带来了一…...

Android开发,车载通讯应用——binder通讯原理解析

Binder简单理解 简单来说&#xff0c;Binder 就是用来Client 端和 Server 端通信的。并且 Client 端和 Server 端 可以在一个进程也可以不在同一个进程&#xff0c;Client 可以向 Server 端发起远程调用&#xff0c;也可以向Server传输数据&#xff08;当作函数参数来传&#…...

[算法]求n!在m进制下末尾有多少个0

参考链接&#xff1a;求n&#xff01;在m进制下末尾0的个数_.!零n,,m-CSDN博客 我们这里和参考链接不同 使用结构体去存储每个因数的信息 然后使用变量index作为索引&#xff0c;其最终值为因数的个数 具体原理&#xff1a; 例子1&#xff1a;求9&#xff01;在10进制下的…...

mysql之用户管理、权限管理、密码管理

用户管理 创建用户create user 杨20.0.0.13 identified by 123; 用户重命名rename user 杨20.0.0.13 to yang20.0.0.13; 删除用户drop user 杨20.0.0.13; 权限管理 查看用户权限show grants for 杨20.0.0.13; 赋予用户权限grant all privileges on *.* to 杨localhost id…...

图情档核心期刊 | 北大核心、CSSCI、CSCD

中文核心期刊要目总览&#xff08;A Guide to the Core Journal of China&#xff0c; 简称北大核心&#xff09;&#xff1a; 主办单位&#xff1a;北京大学图书馆更新频率&#xff1a;北大核心在2008年之前每4年更新研究和编制出版一次&#xff0c;2008年之后&#xff0c;改为…...

Mac上具好用的屏幕录像工具(Omi录屏专家)Screen Recorder By Omi Mac 下载安装详细教程

Omi 录屏专家 是 Mac 上的一款出色的录音工具&#xff0c;它让您能够在Mac电脑上轻松录制和保存高质量音频。这款应用拥有简单直观的操作界面&#xff0c;无论我们水平如何&#xff0c;都可以轻松捕捉录制卓越的音质和录像视频。 该版本的 Omi 安装后可以直接支持最高 4K 60帧…...

牛客网刷题-(8)

&#x1f308;write in front&#x1f308; &#x1f9f8;大家好&#xff0c;我是Aileen&#x1f9f8;.希望你看完之后&#xff0c;能对你有所帮助&#xff0c;不足请指正&#xff01;共同学习交流. &#x1f194;本文由Aileen_0v0&#x1f9f8; 原创 CSDN首发&#x1f412; 如…...

别再傻傻串联了!聊聊数字电路里移位器的三种实现:从简单开关到桶形和对数结构

数字电路设计中的移位器架构选择&#xff1a;从基础实现到性能优化 在数字电路设计中&#xff0c;移位操作是最基础却又最容易被低估的功能之一。许多刚入行的工程师往往会采用最简单的串联移位结构&#xff0c;直到项目遇到性能瓶颈才开始思考优化方案。实际上&#xff0c;移…...

测试09测试09测试09测试09测试09

测试09测试09测试09测试09测试09...

试0998y测试0998y试0998y测试0998y试0998y测试0998y试0998y测试0998y

试0998y测试0998y试0998y测试0998y试0998y测试0998y...

Adobe-GenP 3.0终极指南:5分钟快速免费激活Adobe全系列软件

Adobe-GenP 3.0终极指南&#xff1a;5分钟快速免费激活Adobe全系列软件 【免费下载链接】Adobe-GenP Adobe CC 2019/2020/2021/2022/2023 GenP Universal Patch 3.0 项目地址: https://gitcode.com/gh_mirrors/ad/Adobe-GenP Adobe-GenP是一款革命性的Adobe Creative Cl…...

全新UI 阅后即焚V2正式版系统源码_全开源_安全加密传输

概述 在数字化信息交流日益频繁的今天&#xff0c;如何安全、私密地传输敏感数据&#xff08;如商业机密、登录凭证、个人隐私&#xff09;已成为企业和个人用户共同面临的严峻挑战。传统的即时通讯工具往往存在聊天记录留存、云端备份等安全隐患&#xff0c;难以满足“阅后即…...

用C++模拟堆宝塔游戏:PTA L2-045题解与保姆级代码逐行解析

用C模拟堆宝塔游戏&#xff1a;PTA L2-045题解与保姆级代码逐行解析 堆宝塔游戏是一个有趣的逻辑挑战&#xff0c;它不仅能锻炼编程思维&#xff0c;还能帮助我们深入理解数据结构中的栈操作。本文将带你从零开始&#xff0c;用C实现这个游戏&#xff0c;并逐行解析代码逻辑&a…...

重新定义开源协作:GitHub中文界面如何突破语言认知边界

重新定义开源协作&#xff1a;GitHub中文界面如何突破语言认知边界 【免费下载链接】github-chinese GitHub 汉化插件&#xff0c;GitHub 中文化界面。 (GitHub Translation To Chinese) 项目地址: https://gitcode.com/gh_mirrors/gi/github-chinese GitHub中文汉化插件…...

YOLOv8从零部署到实战:一站式环境配置与核心功能解析

1. YOLOv8环境搭建全攻略 第一次接触YOLOv8时&#xff0c;我也被各种依赖项搞得头晕眼花。经过多次实践&#xff0c;我总结出一套最稳妥的安装方案&#xff0c;特别适合刚入门的新手。YOLOv8作为当前最先进的目标检测框架之一&#xff0c;其安装过程确实比传统CV库复杂些&#…...

Arm硬件跟踪技术在嵌入式调试中的应用与优化

1. Arm Development Studio 跟踪技术深度解析在嵌入式系统开发领域&#xff0c;调试实时性要求高的系统一直是个棘手问题。传统断点调试会中断程序执行流&#xff0c;而日志输出又可能影响系统时序。Arm Development Studio提供的硬件跟踪技术完美解决了这一痛点——它能以纳秒…...

IDA逆向分析实战:破解函数限制、修复栈平衡与Switch识别

1. 破解IDA函数大小限制的实战技巧 第一次用IDA反编译大型函数时&#xff0c;看到"function is too big"的提示真是让人头疼。这个限制其实是IDA为了防止资源耗尽设置的保险机制&#xff0c;但现代计算机的性能早已今非昔比。我去年分析一个游戏引擎时&#xff0c;核…...