专业汉语词典知识平台,分享汉字词语知识、历史文学知识解答!

励北网
励北网

sql增删改查语句怎么写,sql增删改查语法

来源:小易整编  作者:小易  发布时间:2023-02-20 05:02
摘要:sql增删改查语句怎么写,sql增删改查语法一、初识数据库数据库是将大量数据保存起来,通过计算机加工而成的可以进行高效访问的数据集合。该数据集合称为数据库(Database,DB);用来管理数据库的计算机系统称为数据库管理系统(Databa...

sql增删改查语句怎么写,sql增删改查语法

一、初识数据库

数据库是将大量数据保存起来,通过计算机加工而成的可以进行高效访问的数据集合。该数据集合称为数据库(Database,DB);用来管理数据库的计算机系统称为数据库管理系统(Database Management System,DBMS)。
1.1 DBMS的种类

DBMS主要通过数据的保存格式(数据库的种类)来进行分类,现阶段主要有以下5种类型:

  • 层次数据库(Hierarchical Database,HDB);
  • 关系数据库(Relational Database,RDB),如Oracle Database、SQL Server、MySQL等;
  • 面向对象数据库(Object Oriented Database,OODB);
  • XML数据库(XML Database,XMLDB);
  • 键值存储系统(Key-Value Store,KVS),如MongoDB;


1.2 RDBMS的常见系统结

使用RDBMS时,最常见的系统结构是客户端/服务器类型(C/S类型),如下:

sql增删改查语句怎么写,sql增删改查语法

1.3 SQL

数据库中存储的表结构类似于excel中的行和列,在数据库中,行称为记录,它相当于一条记录;列称为字段,它代表了表中存储的数据项目;行和列交汇的地方称为单元格,一个单元格中只能输入一条记录。

sql增删改查语句怎么写,sql增删改查语法

SQL是为操作数据库而开发的语言,可分为三类(如下),实际使用的SQL语句当中有90%属于 DQL。
  • DDL(数据定义语言):用于创建和重构数据库对象,如创建和删除表;其指令有CREATE(创建数据库和表等)、DROP(删除数据库和表等)、ALTER(修改数据库和表等);
  • DML(数据操作语言):用于操作关系型数据库对象内部的数据;其指令有INSERT(向表中插入新数据)、UPDATE(更新表中的数据)、DELETE(删除表中的数据);
  • DQL(数据查询语言):用于构成对关系型数据库的查询;其指令有SELECT(查询表中的数据)、其可与count/sum/group by/order by/having等组合在一起使用;
  • DCL(数据控制语言):用于创建与用户访问相关的对象,以及控制用户的权限;其指令有COMMIT(保存数据库事务)、ROLLBACK(撤销数据库事务)、GRANT(赋予用户操作权限)、REVOKE(取消用户的操作权限);

二、增删改查

2.1 数据类型

数据库创建的表,所有的列都必须指定数据类型,每一列都不能存储与该列数据类型不符的数据。

  • CHAR型:用来存储定长字符串,当列中存储的字符串长度达不到最大长度的时候,使用半角空格进行补足,由于会浪费存储空间,所以一般不使用;
  • VARCHAR型:用来存储可变长度字符串,定长字符串在字符数未达到最大长度时会用半角空格补足,但可变长字符串不同,即使字符数未达到最大长度,也不会用半角空格补足;
  • INTEGER型:用来指定存储整数的列的数据类型(数字型),不能存储小数;
  • DATE型:用来指定存储日期(年月日)的列的数据类型(日期型);
  • 此外,还有bigint、float、datetime、year等;
约束是除了数据类型之外,对列中存储的数据进行限制或追加条件的功能。
  • NOT NULL:是非空约束,即该列必须输入数据;
  • PRIMARY KEY:是主键约束,代表该列是唯一值,可通过该列取出特定的行的数据;
2.2 数据库操作
创建数据库:
CREATE DATABASE < 数据库名称 >;
删除数据库:
DROP DATABASE < 数据库名称 >;
2.3 数据表操作
创建数据表:
CREATE TABLE < 表名 >
(< 列名1 > < 数据类型 > < 该列所需约束 >,
< 列名2 > < 数据类型 > < 该列所需约束 >,
< 列名3 > < 数据类型 > < 该列所需约束 >,
< 列名4 > < 数据类型 > < 该列所需约束 >,
......
< 该表的约束1 >, < 该表的约束2 >, ......);
修改数据表:(注意:修改后的表是无法恢复的)
添加列:ALTER TABLE < 表名 > ADD COLUMN < 列名 > < 数据类型 >;
删除列:ALTER TABLE < 表名 > DROP COLUMN < 列名 >;
清空数据表:(相比drop/delete,truncate用来清除数据时,速度最快)
TRUNCATE TABLE < 表名 > ;
删除数据表:(注意:删除的表是无法恢复的,只能重新插入)
DROP TABLE < 表名 > ;
2.4 表中数据的操作
插入数据:
INSERT INTO < 表名 >
(列1, 列2, 列3,......) -- 若全列插入,此语句可省略
VALUES(值1, 值2, 值3,......);

INSERT INTO < 表名 >
(列1, 列2, 列3,......) -- 若全列插入,此语句可省略
select < 需要的列名 >
from < 要查询的表 >;
where condition -- 可选;
更新数据:
UPDATE < 表名 >
SET < 列名 > = < 表达式 > [,< 列名2 > = < 表达式2 >...];
WHERE condition; -- 可选
ORDER BY 子句; --可选
LIMIT 子句; --可选
查询数据:
SELECT * (或 < 列1, 列2, 列3,... > )
FROM < 表名 >
where condition -- 可选
oeder by 某列名 -- 可选
删除数据:
DELETE FROM < 表名 >
where condition


三、操作符和聚合函数

操作符是一个保留字或字符,主要用于SQL语句的where子句来执行操作,其和python中的运算符基本一致。

  • 算术运算符:加减乘除( + - * / );

  • 比较运算符:等于、不等于、大于、小于、大于等于等(=、<>或!=、 >、<、>=、<=);

  • 逻辑运算符:between、is null、like、in、all、any、is not null、not in等;

  • 连接运算符:and(且,交集)、or(或,并集);

聚合函数也叫汇合函数,其为SQL语句提供合计信息,如计数、总和、平均等。

  • COUNT函数:一般用于统计不包含null值的记录数(行数),如count(col_name);但count(*)会统计表中全部记录数,包含null和重复值;可与`distinct`一起使用(去重);

  • SUM函数:返回某字段的总和;可与`distinct`一起使用,这时只会计算不同记录的和,一般无意义,可忽略;只适用于数值类型的列;

  • AVG函数:返回某字段的平均值;可与distinct一起使用,这时只会计算不同记录的平均值,一般无意义,可忽略;只适用于数值类型的列;

  • MAX函数:返回某字段的最大值,null值不在计算范围之内;适用于所有数据类型;

  • MIN函数:返回某字段的最小值,null值不在计算范围之内;适用于所有数据类型;

四、数据排序和分组

数据分组是按照逻辑次序把具有重复值的字段进行合并;其是通过在select语句里使用group by子句来实现。

排序用于对查询得到的数据进行排序,用order by子句来实现(默认升序(即asc),降序为desc)。
SELECT < 列1 >,< 列2 >,< 列3 >,...
FROM < 表名 >
GROUP BY < 列1 >,< 列2 >,< 列3 >,...
ORDER BY < 列m >[asc/desc], < 列n >[asc/desc], ...
书写顺序:SELECT → FROM → WHERE → GROUP BY → HAVING → ORDER BY
五、练习题

sql增删改查语句怎么写,sql增删改查语法

# 创建表create table addressbook(regist_no INTEGER NOT NULL COMMENT '注册编号',name VARCHAR(128) NOT NULL COMMENT '姓名',address VARCHAR(256) NOT NULL COMMENT '地址',tel_no CHAR(10) COMMENT '电话号码',mail_address CHAR(20) COMMENT '邮箱地址',PRIMARY KEY (regist_no)); # postal_code、定长字符串类型(长度为8)、不能为 NULLALTER TABLE addressbook ADD COLUMN postal_code char(8) NOT NULL COMMENT '邮政编码' # 删除 addressbook DROP TABLE addressbook '删除掉的addressbook表,不能恢复,只能重新创建'

可通过以下操作,创建表(以Navicat为例):

sql增删改查语句怎么写,sql增删改查语法


本文地址:百科问答频道 https://www.neebe.cn/wenda/903129.html,易企推百科一个免费的知识分享平台,本站部分文章来网络分享,本着互联网分享的精神,如有涉及到您的权益,请联系我们删除,谢谢!


百科问答
小编:小易整编
相关文章相关阅读
  • SQL创建视图,查看视图

    SQL创建视图,查看视图

    视图为数据的表示提供了更为便捷的方式,选择性的对数据进行显示,更方便了对数据的管理创建视图01首先打开对象资源管理器展开数据库节点右击视图02选择新建视图...

  • SQLAlchemy是什么

    SQLAlchemy是什么

    SQLAlchemy是Python编程语言下的一款开源软件。提供SQL工具包及对象关系映射工具,使用MIT许可证发行。采用简单的Python语言,为高效和高性能的数据库访问设计,实现了完整的企业级持久模型。SQLAlchemy是Pyt...

  • alisql配置安装,alisql安装教程

    alisql配置安装,alisql安装教程

    alisql配置安装,alisql安装教程AliSQL编译安装#查看是否存在MySQL软件包rpm-qa|grepmysql#安装依赖包yum-yinstallgccgcc-c++ncurses-develperlcmakebisonunz...

  • 外键约束怎么写,MySql外键约束教程

    外键约束怎么写,MySql外键约束教程

    外键约束怎么写,MySql外键约束教程学习目标掌握外键约束的添加方法知道外键约束字段的添加及删除规则1.多表查询概述l实际开发中,一个项目通常需要很多张表才能完成。l例如:一个商城项目就需要分类表(category)、商品表(product...

  • 如何防止sql注入,防止sql注入的方法有哪些

    如何防止sql注入,防止sql注入的方法有哪些

    如何防止sql注入,防止sql注入的方法有哪些什么是SQL注入?SQLi是一种基于Web的应用程序攻击,攻击者可以在网站的数据库中运行恶意查询。SQL是一种用于执行恶意SQL语句的代码注入技术。例如,如果你想登录网站,但忘记了用户名和密码,...

  • 数据库设计规范,mysql数据库设计规范

    数据库设计规范,mysql数据库设计规范

    数据库设计规范,mysql数据库设计规范规范背景与目的MySQL数据库与Oracle、SQLServer等数据库相比,有其内核上的优势与劣势。我们在使用MySQL数据库的时候需要遵循一定规范,扬长避短。本规范旨在帮助或指导RD、QA、OP等...

  • 数据库索引怎么用,MySQL数据库索引用法详细介绍

    数据库索引怎么用,MySQL数据库索引用法详细介绍

    数据库索引怎么用,MySQL数据库索引用法详细介绍关于MySQL索引,对于研发同学,尤其是后端研发同学,一定不会陌生。我们工作中经常会用到MySQL数据库,就肯定会经常用到性能优化方面的设计和考量,常常用涉及到MySQL索引。但是关于MyS...

  • mysql触发器怎么用,mysql触发器作用及使用案例

    mysql触发器怎么用,mysql触发器作用及使用案例

    mysql触发器怎么用,mysql触发器作用及使用案例1.什么是触发器 触发器(trigger):监视某种情况,并进行某种操作,它的执行并不是程序调用,也不是手工启动,而是由事件来触发,例如:对一张表进行操作(插入,更新,删除)时,就会触...

  • 周排行
  • 月排行
  • 年排行

精彩推荐