首页 > 其他分享 >DML/DDL/TCL新手教程

DML/DDL/TCL新手教程

时间:2024-07-26 21:29:35浏览次数:15  
标签:truncate 删除 DML 别名 语法 TCL DDL where delete

DML(数据定义语言)

插入语句

方式一:经典的插入语句 *

语法:

insert into 表名(列名,...) values(值1,...);

方式二:

语法:

insert into 表名
set 列名=值,列名=值,......

方式一和方式二对比:

  1. 方式一支持插入多行,方式二不支持;
  2. 方式一支持子查询,方式二不支持;

修改语句

修改单表的记录*

语法:

update 表名(1)
set 列=新值,列=新值,......
where 筛选条件;(2)

修改多表的记录(补充)

SQL92语法:

update 表1 别名,表2 别名
set 列=值,......
where 连接条件
and 筛选条件;

SQL99语法:

update 表1 别名
inner join 表2 别名
on连接条件
set 列=值,......
where 筛选条件;

删除语句

方式一:delete

单表删除(*)

语法:

delete from 表名 where 筛选条件;

多表删除(补充)

SQL92语法:

delete 表1的别名,表2的别名
from 表1 别名,表2 别名
where 连接条件
and 筛选条件;

SQL99语法:

delete 表1的别名 ,表2的别名
from 表1 别名
join 表2 别名 on 连接条件
where 筛选条件;

方式二:truncate

语法:

truncate table 表名;

delete和truncate对比:

  1. delete可以加where条件,truncate不能加
  2. truncate删除,效率高一点
  3. 加入要删除的表中有自增长列,如果用delete删除后,再插入数据,自增长列的值从断点开始,而truncate删除后,再插入数据自增长列的值从1开始
  4. truncate删除没有返回值,delete删除有返回值
  5. truncate删除不能回滚,delete删除可以回滚

DDL(数据定义语言)

概念

对库和表的管理

库的管理

  • 创建
  • 修改
  • 删除

表的管理

  • 创建
  • 修改
  • 删除

创建 create

修改 alter

删除 drop

库的创建

语法:

create database [if not exists]库名;

表的创建(*)

语法:

create table 表名(
列名 列的类型 [(长度) 约束],
列名 列的类型 [(长度) 约束],
...
)

常见的数据类型

  • 数值型:整型 intbigint;小数:定点数 DECIMAL 类型,NUMERIC 类型;浮点数 float, double
  • 字符型:较短的文本 charvarchar;较长的文本 text、二进制 blob
  • 日期型:datedatetimetimestamp

常见的约束条件

  • not null :非空
  • default :默认
  • primary key :主键
  • unique :唯一
  • check:检查约束(mysql中不支持)
  • foreign key :外键

主键和唯一的对比

  • 保证唯一性
  • 是否允许为空
  • 一个表中可以有多少个
  • 是否允许组合

TCL

概念

事务:一个或一组sql语句组成一个执行单元,这个执行单元要么全部执行,要么全部不执行。

事务特性:ACID

  • 原子性:一个事务不可再分割,要么都执行要么都不执行
  • 一致性:一个事务执行会使数据从一个一致状态切换到另一外一个一致状态
  • 隔离性:一个事务的执行不受其他事务的干扰
  • 持久性:一个事务一旦提交,则会永久的改变数据库的数据

标签:truncate,删除,DML,别名,语法,TCL,DDL,where,delete
From: https://www.cnblogs.com/xu-sy122/p/18326280

相关文章

  • 用Fiddler如何对Jmeter的请求进行抓包
    有时候,为了得到更详细的请求结果,我们可能需要使用Fiddler结合Jmeter来抓包分析,从而更好的辅助测试。遇到的问题这里以一个获取学生信息的接口为例进行说明。当我在Jmeter里按接口文档正确设置好请求,打开Fiddler之后,发现无法抓到Jmeter的请求。从图片可以看到,Fiddler并......
  • MySQL入门---(一)SQL的DDL语句
    1.管理员身份进入命令行窗口:win+rcmd然后不要直接点,按ctrl+shift+enter管理员模式进去,点确定2.MySQL数据库启动:netstartmysql80停止:netstopmysql803.系统自带的命令行工具执行指令:mysql-uroot-p1.SQL通用语法:2.DDL语句3.表结构查询:4.创建表结构5.表操作--......
  • 错误 1 error LNK2019: 无法解析的外部符号 _MQTTClient_create,该符号在函数 "protect
    前言全局说明错误1errorLNK2019:无法解析的外部符号_MQTTClient_create,该符号在函数"protected:virtualint__thiscallCmfc_mqttclientpoweronoffDlg::OnInitDialog(void)"(?OnInitDialog@Cmfc_mqttclientpoweronoffDlg@@MAEHXZ)中被引用一、说明环境:Windows1......
  • MYSQL基础知识之DML
    数据库备份与还原备份 mysqldump.exe-hlocalhost-P3306(端口号) -uroot -p库名>E:/库名20240719.sql还原 mysql.exe-h106.55.169.91-P3306-uroot-phaha<E:/xiao2.sql数据表的新增 insertinto表名(字段名,字段名,....,字段名) values/......
  • 飞桨PaddleOCR-动手学OCR
    技术背景在人工智能的浪潮中,OCR(OpticalCharacterRecognition,光学字符识别)技术作为一项关键技术,正在不断地推动着信息获取和处理的自动化和智能化。飞桨PaddleOCR,作为百度飞桨推出的一款开源OCR工具库,以其强大的识别能力、灵活的应用场景和易用的接口设计,成为开发者和研......
  • TCL空调售后服务维修电话/官方统一24小时TCL客服热线号码
    TCL空调售后服务客服电话:400-778-8380,TCL空调24小时售后服务电话400-7788-380人工无转接提示操作,选择售后服务。TCL电器服务无忧:家电设计、配送、安装、售后等服务都是由用户当地销售服务中心提供,有问题网上反馈或者拨打TCL全国服务热线4007788380,24小时服务到位,不再担心服务问题......
  • TCL空调全国售后热线电话/TCL24小时维修客服热线号码
    TCL空调售后服务客服电话:400-778-8380,TCL空调24小时售后服务电话400-7788-380人工无转接提示操作,选择售后服务。TCL电器服务无忧:家电设计、配送、安装、售后等服务都是由用户当地销售服务中心提供,有问题网上反馈或者拨打TCL全国服务热线4007788380,24小时服务到位,不再担心服务问题......
  • 数字IC——TCL语言1
    一、TCL概述TCL语言的使用范围启动TCL的方法linux系统下$tclsh%%%exit TCL语法置换:把命令分成独立的单词,同时进行必要的置换变量置换$:TCL解释器认为$后面是变量名,将变量置换成它的值。%setA"ILoveTCL"ILoveTCL%puts$AILoveTCL命令置换[]:[]内是一......
  • TCL空调全国各市售后服务热线电话(官方统一TCL空调客服热线号码2024已更新)
    TCL空调售后服务客服电话:400-685-6656,TCL空调24小时售后服务电话400-6856-656人工无转接提示操作,选择售后服务。TCL电器服务无忧:家电设计、配送、安装、售后等服务都是由用户当地销售服务中心提供,有问题网上反馈或者拨打TCL全国服务热线4006856656,24小时服务到位,不再担心服务问题......
  • 使用Fiddler进行mock
    使用Fiddler进行Mock(模拟)请求是一种测试策略,它允许你在开发或测试环境中模拟服务器的响应,而不必依赖实际服务器的状态或行为。这在测试API调用、断点测试、或者当实际服务器不可用或响应不一致时非常有用。在Fiddler中,你可以使用“AutoResponder”和“Composer”两个主要工......