首页 > 数据库 >SQL语言介绍及DDL用法

SQL语言介绍及DDL用法

时间:2025-01-08 23:31:37浏览次数:3  
标签:数据库 DDL 用法 表名 字段 student SQL table

目录

一、SQL介绍

1.SQL的语法

2.SQL的分类

二、DDL数据库定义语言

1.对数据库的操作

2.对表的操作

2.1表操作 --- 创建查询

2.2表操作 --- 修改以及字段

2.3表操作 --- 删除

三、总结


前言:
本文章就开始介绍SQL语言了,因为老师讲的课以及一些资料,所展现的SQL的语句基本上是大写的,本来SQL记起来还是有点难的,又加上我们不熟悉的大写字母,就又添一难

因此,我写的这篇文章全部以小写为主,旨在帮助读者更好的理解以及运用

本文适合预习,复习

在文章最后有总结的思维导图,可以用那个来复习,相信一定会让你眼前一亮
最后也会附上一个SQL练习的网站

话不多说,即刻发车~~~

一、SQL介绍

 MySQL全称:Structured Query Language(结构化查询语言)。操作关系型数据库的编程语言,定义了 一套操作关系型数据库统一标准
也就是说,不论MySQL还是Oracle只要是关系型数据库用的都是这个SQL统一的语言,里面只有一点点的不同,因此学了MySQL,也可以转到Oracle
注:因为上篇文章介绍了如何安装长久使用的DataGrip,所以下面的代码演示就是在DataGrip,当然如果没有下这个软件,也可以直接用控制台
这两个方法我都有相应的文章,点进链接即可(* ̄︶ ̄)

1.SQL的语法

a.SQL语句可以单行多行书写,以分号结尾
b.SQL语句可以使用空格 或者 缩进来增强语句的可读性
c. MySQL数据库的SQL语句不区分大小写,关键字建议使用大写(大写也是为了代码的规范性,我们初学者可以先从小写入手,再转向大写)
d.注释: 单行注释:-- 注释内容 或 # 注释内容
               多行注释:/* 注释内容 */ 

2.SQL的分类

SQL根据功能可以分为:DDLDMLDQLDCL
后面也是根据这四个功能来展开
 

分类全称
DDLData Definition Language数据库定义语言(定义数据库,表,字段)
DMLData Manipulation Language数据库操作语言(数据库表中数据的增,删,改)
DQLData Query Language数据库查询语言(查询表中记录)
DCLData Control Language数据库控制语言(控制用户权限)

二、DDL数据库定义语言

用来定义数据库对象(数据库字段) 其中的字段的意思就是这个表的列

1.对数据库的操作

database 就是数据库的意思
6b69aa15b6b0432c90162eb7eb86b90e.png

a.查询所有数据库

show databases ;

 f24bb8c52d994d239e5180aae797079d.png

b.创建数据库

语法:
create database [ if not exists ] 数据库名 [ default charset 字符集 ] [ collate 排序 规则 ] ;解释如下:
创建 database [如果不存在]数据库名[default charset 字符集]
这里的[ ]里的内容可以省略
因此就有三种情况,明白意思即可:

--第一种
create database luoyi ;

--第二种,加上条件
--如果没有luoyi这个数据库的话,就创建
create database if not exists luoyi ;

--第三种,加上字符集
create database luoyi default charset utf8mb4 ;
--这里的字符集 utf8mb4 是 UTF-8 的扩展,能表示更多字符

c.删除数据库

drop database [ if exists ] 数据库名;
如果存在这个数据库就删除
最好都加上这个判断,因为如果这个数据库不存在的话就会报错
例如数据库中没有luo这个数据库就会报错
1bad8bc92b8e4ebd99d77374314bb823.png

drop database if exists luoyi;


d.切换数据库

use 数据库名 ;
在刚刚的这个数据库中,找到要切换的数据库,切换了的数据库就是当前使用的数据库了

use luoyi ;

e.查询当前数据库 

select database() ;
注意加上(),这是一个函数调用
d2482b4360b9413383371658f13b3960.png
就是你切换到了哪个数据库,那么切换的数据库就是当前的数据库

2.对表的操作

2.1表操作 --- 创建查询

a.查询当前数据库所有表名称

show tables ;
使用use切换到的数据库里的所有表名称,例如:
d86734c6849541dd9546d52be5dbfc36.png

b.创建表结构

create table 表名(

        字段1 字段1类型 [ comment 字段1注释 ],

        字段2 字段2类型 [ comment 字段2注释 ],

        字段3 字段3类型 [ comment 字段3注释 ], ......

        字段n 字段n类型 [ comment 字段n注释 ]

) [ comment 表注释 ] ; 

这里的类型,等下介绍,这里先有个印象
c9965f0b3a0e44648f868f0e50992b31.png

注意的点:

  1. 每一条字段后面以逗号结尾,最后一个字段不加逗号
  2. 最后加上分号
  3. comment 是注解

这里提到字段,再强调一下,字段就是列,想象一下创建的这些字段都是在列上的,下图就是刚刚创建这个表的结构图
737ee3c6d6ac4026a87a5055a832a2a5.png

c.查看指定表结构

desc 表名 ;

 因为我们已经在一个数据库中了,所以直接写表名即可
表示当前数据库的某张表
436dfc84a13c401b809c2a7b8c37e818.png

d.查询指定表的建表语句

show create table 表名 ;

用于意思是显示创建指定表的 SQL 语句。也就是我刚刚创建的这个表,是用哪些语句写出来的
02cdb0bc4ee14bc490416f9e930c514c.png
 

2.2表操作 --- 修改以及字段

a.添加字段

alter table 表名 add 字段名 类型 (长度) [ comment 注释 ]

alter table student add area varchar(5) comment '地区';

就相当于在student表中添加了area这个字段类型是 可变字符串类型
那么现在的student表中就多出了,area这一列   字段就是列
1cbce6bc8d6843f093928379658d03f3.png

b.删除字段

alter table 表名 drop 字段名;

alter student drop name ;
--删除了student表中的name字段
--也就是没有了name这一列

c.修改数据类型

alter table 表名 modify 字段名  数据类型(长度);

d.修改字段名和字段类型

alter table 表名 change 旧字段名 新字段名 类型 (长度) [ comment 注释 ]

将student表中的name修改成StudentName 类型为 varchar(10)
 

atler table student change name StudentName varchar(10) ;

e.修改表名

alter table 表名 rename to 新表名;

将student表名改成 SuperStudent
 

alter table student rename to StudentName ;

2.3表操作 --- 删除

a.删除表

drop table [ if exists ] 表名;

删除student表

drop table if exists student ;

 b.删除指定表, 并重新创建表

truncate table 表名;

 在删除表的时候,表中的全部数据也都会被删除。

三、总结

e0c5e538fac543f68fc95925de0aeb16.png

后续还有三个语句还没讲的,因为四个一起讲太多了,本文就先讲SQL的介绍以及DDL的用法
如果本文对你有帮助还望点个赞,收藏➕关注~
万分感谢

标签:数据库,DDL,用法,表名,字段,student,SQL,table
From: https://blog.csdn.net/qq_46987323/article/details/145016323

相关文章

  • MySQL Innodb中的事务隔离级别和锁的关系15
    前言我们都知道事务的几种性质,数据库为了维护这些性质,尤其是一致性和隔离性,一般使用加锁这种方式。同时数据库又是个高并发的应用,同一时间会有大量的并发访问,如果加锁过度,会极大的降低并发处理能力。所以对于加锁的处理,可以说就是数据库对于事务处理的精髓所在。这里通过分析......
  • php毕业设计基于php的购物商城在线购物系统电商网站php毕业设计计算机毕设指导php源码
    一,功能介绍        前台主要包括网站首页、商品推荐、最新商品、新闻咨询、商品分类、商品资讯、评论、登录、注册、加入购物车、结算、个人中心等功能模块商品推荐、最新商品在商品推荐、最新商品模块,用户可以查看全部商品信息,选择商品进行添加购物车等操作,购物......
  • Python+Django城市公交查询系统(Pycharm Flask Django Vue mysql)
    收藏关注不迷路,防止下次找不到!文章末尾有惊喜项目介绍Python+Django城市公交查询系统(PycharmFlaskDjangoVuemysql)项目展示详细视频演示请联系我获取更详细的演示视频,相识就是缘分,欢迎合作!!!所用技术栈前端vue.js框架支持:django数据库:mysql5.7数据......
  • Python+Django在线车辆租赁信息管理系统的设计与实现(Pycharm Flask Django Vue mysql
    收藏关注不迷路,防止下次找不到!文章末尾有惊喜项目介绍Python+Django在线车辆租赁信息管理系统的设计与实现(PycharmFlaskDjangoVuemysql)项目展示详细视频演示请联系我获取更详细的演示视频,相识就是缘分,欢迎合作!!!所用技术栈前端vue.js框架支持:django......
  • (免费送源码)计算机毕业设计原创定制:Java+ssm+MySQL ssm家电售后服务
     摘 要信息化社会内需要与之针对性的信息获取途径,但是途径的扩展基本上为人们所努力的方向,由于站在的角度存在偏差,人们经常能够获得不同类型信息,这也是技术最为难以攻克的课题。针对家电售后服务等问题,对家电售后服务进行研究分析,然后开发设计出家电售后服务以解决问题。......
  • (免费送源码)计算机毕业设计原创定制:Java+B/S+MySQL SpringBoot高校学生档案管理系统
     摘 要21世纪的今天,随着社会的不断发展与进步,人们对于信息科学化的认识,已由低层次向高层次发展,由原来的感性认识向理性认识提高,管理工作的重要性已逐渐被人们所认识,科学化的管理,使信息存储达到准确、快速、完善,并能提高工作管理效率,促进其发展。论文主要是对高校学生档案管......
  • sqlalchemy.exc.OperationalError
    最后发现是密码中含特殊字符@导致的连接报错  其他参考:sqlalchemy.exc.OperationalError通常指示Python应用程序与数据库之间的连接出现问题。这里有一些可能的原因和解决方案:数据库连接参数错误:检查你的数据库连接字符串(DSN)。确保主机名、端口、数据库名称、用户名......
  • docker-compose部署下Fastapi中使用sqlalchemy和Alembic
    本篇介绍使用Fastapi+sqlalchemy+alembic来完成后端服务的数据库管理,并且通过docker-compose来部署后端服务和数据库Mysql。包括:数据库创建,数据库用户创建数据库服务发现Fastapi连接数据库Alembic连接数据库服务健康检查部署数据库version:'3'services:db:......
  • 误删除了表?PolarDB MySQL帮你恢复!完成就送2025蛇年春联!
    由于DDL语句无法回滚,如果误删除了表(例如DROP TABLE),可能会导致数据丢失。PolarDB MySQL提供表回收站的功能,删除的表会被临时转移到表回收站。通过本次操作,带您体验如何使用PolarDB MySQL提供表回收站的功能,从表回收站恢复误删的表。完成任务赢奖励,活动火热进行中!完成任务一和......
  • 安装postgresql-14.10数据库
    PostgreSQL14是一款功能强大的开源关系型数据库管理系统,以下是对它的详细简介:性能提升在查询优化方面进行了改进,能够更高效地处理复杂查询,减少查询执行时间。例如,对于多表连接查询和包含子查询的复杂语句,PostgreSQL14可以通过更智能的优化策略选择更优的执行计划,从而提升整体......