【MySQL】SQL 入门和 DDL

news2024/11/19 13:42:03

1. 通用语法

  1. SQL语句可以单行或多行书写,以分号结尾
  2. SQL语句可以使用空格/缩进来增强语句的可读性
  3. MySQL数据库的SQL语句不区分大小写,关键字建议使用大写
  4. 注释:
    • 单行注释:-- 注释内容 或 # 注释内容
    • 多行注释:/* 注释内容 */

2. SQL分类

SQL语句,根据其功能,主要分为四类:DDL、DML、DQL、DCL。

image.png

2.1 DDL

2.1.1 数据库操作

数据定义语言,用来定义数据库对象(数据库,表,字段) 。

1). 查询所有数据库

show databases ;

2). 查询当前数据库

select database();

3). 创建数据库

create database [ if not exists ] 数据库名 [ default charset 字符集 ] [ collate 排序 规则 ] ;

image.png

4). 删除数据库

drop database [ if exists ] 数据库名 ;

5). 切换数据库

我们要操作某一个数据库下的表时,就需要通过该指令,切换到对应的数据库下,否则是不能操作的。

use 数据库名 ;
2.1.2 表操作

表操作-查询创建

1). 查询当前数据库所有表

show tables;

比如,我们可以切换到sys这个系统数据库,并查看系统数据库中的所有表结构。

use sys;
show tables;

2). 查看指定表结构

desc 表名;

通过这条指令,我们可以查看到指定表的字段,字段的类型、是否可以为NULL,是否存在默认值等信息。

3). 查询指定表的建表语句

show create table 表名;

通过这条指令,主要是用来查看建表语句的,而有部分参数我们在创建表的时候,并未指定也会查询到,因为这部分是数据库的默认值,如:存储引擎、字符集等。

4). 创建表结构

create table if not exists `student`
(
    `id`       integer          not null primary key AUTOINCREMENT,
    `name`     varchar(256)     not null comment '姓名',
    `age`      int              null,
    `class_id`    bigint           not null,
    `score`    double default 0 null,
    `exam_num` int    default 0 null
);

表操作-数据类型

MySQL中的数据类型有很多,主要分为三类:数值类型、字符串类型、日期时间类型。

098ab4705c1901b968a34aa4ac3ec760.png

1). 数值类型

年龄字段 – 不会出现负数, 而且人的年龄不会太大

age tinyint unsigned

分数 – 总分 100 分, 最多出现一位小数

score double(4,1)

2). 字符串类型

char 与 varchar 都可以描述字符串,char是定长字符串,指定长度多长,就占用多少个字符。而varchar是变长字符串,指定的长度为最大占用长度。

fb3aee46e823133cc2df27297fe5e84d.png

1). 用户名 username ------> 长度不定, 最长不会超过 50
username varchar(50)
2). 性别 gender ---------> 存储值, 不是男,就是女
gender char(1)
3). 手机号 phone --------> 固定长度为 11
phone char(11)

3). 日期时间类型

fb23254d411686f31970cb9e27bb50e1.png

1). 生日字段 birthday
birthday date
2). 创建时间 createtime
createtime datetime

表操作-修改

1). 添加字段

ALTER TABLE 表名 ADD 字段名 类型 (长度) [ COMMENT 注释 ] [ 约束 ];

2). 修改数据类型

ALTER TABLE 表名 MODIFY 字段名 新数据类型 (长度);

3). 修改字段名和字段类型

ALTER TABLE 表名 CHANGE 旧字段名 新字段名 类型(长度)[COMMENT 注释] [约束];

4). 删除字段

ALTER TABLE 表名 DROP 字段名;

5). 修改表名

ALTER TABLE 表名 RENAME TO 新表名;

表操作-删除

1). 删除表

可选项 IF EXISTS 代表,只有表名存在时才会删除该表,表名不存在,则不执行删除操作(如果不加该参数项,删除一张不存在的表,执行将会报错)。

DROP TABLE [ IF EXISTS ] 表名;

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

TRUNCATE TABLE 表名;

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

探索JavaScript中的构造函数,巩固你的JavaScript基础

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

【Unity实战】UGUI和Z轴排序那点事儿

如果读者是从Unity 4.x时代过来的,可能都用过NGUI这个插件(后来也是土匪成了正规军),NGUI一大特点是可以靠transform位移的Z值进行遮挡排序,然而这个事情在UGUI成了难题(Sorting Layer、Inspector顺序等因素…

波奇学Linux:共享内存

进程通信的前提:不同的进程看到同一份的资源 直接原理:同一块物理内存映射到不同进程的共享区 共享内存拆解: 1.申请内存,通过页表映射到进程地址空间 2.返回首地址,便于进程利用 3.释放共享内存,去关联 4.内存的申请…

如何使用Docker部署IT-Tools并结合内网穿透实现公网访问本地工具箱服务

作为程序员,在日常工作中,需要借助一些工具来提高我们工作效率,IT-Tools是为开发人员度身打造的一套便捷在线工具。它提供全面功能,使开发者能以更高效方式完成任务。经由IT-Tools,开发人员能轻松应对各类技术挑战&…

数据结构--树的遍历

数据结构--树的遍历 1. 前序中序后序遍历2. 前序中序后序遍历代码 1. 前序中序后序遍历 2. 前序中序后序遍历代码 /** public class TreeNode {int val 0;TreeNode left null;TreeNode right null;public TreeNode(int val) {this.val val;}} */// 前序遍历顺序&#xff1…

Sora技术原理解析

1.Sora简介 Sora是一个基于大规模训练的文本控制视频生成扩散模型。 Sora能够生成高达1分钟的高清视频,涵盖广泛的视觉数据类型和分辨率。 Sora使用简单的文本描述,使得视频创作变得前所未有的简单和高效。 Sora的一些能力: Text-to-video…

爬取一人之下所有图片的uzr以及源代码

import requests from lxml import etree import json import os from urllib import request# 设置Bing搜索URL和请求头 url https://cn.bing.com/images/search?q%E4%B8%80%E4%BA%BA%E4%B9%8B%E4%B8%8B%E5%9B%BE%E7%89%87&formIQFRML&first1&cw1177&ch693 …

Gophish+EwoMail 自建钓鱼服务器

GophishEwoMail 自建钓鱼服务器 文章目录 GophishEwoMail 自建钓鱼服务器1.前提准备2.搭建EwoMail邮件服务器1)Centos7 防火墙操作2)设置主机名3)host配置4)安装EwoMail5)获取DKIM6)端口服务介绍7&#xff…

BUUCTF crypto做题记录(11)新手向

一、[HDCTF2019]bbbbbbrsa 题目所给的信息我汇总到以下代码中 from base64 import b64encode as b32encode from gmpy2 import invert,gcd,iroot from Crypto.Util.number import * from binascii import a2b_hex,b2a_hex import randomflag "************************…

如何在Win系统从零开始搭建Z-blog网站,并将本地博客发布到公网可访问

文章目录 1. 前言2. Z-blog网站搭建2.1 XAMPP环境设置2.2 Z-blog安装2.3 Z-blog网页测试2.4 Cpolar安装和注册 3. 本地网页发布3.1. Cpolar云端设置3.2 Cpolar本地设置 4. 公网访问测试5. 结语 1. 前言 想要成为一个合格的技术宅或程序员,自己搭建网站制作网页是绕…

印象笔记 - Markdown 入门指南

一、Markdown 是什么? Markdown 是一种轻量级的「标记语言」,创始人为约翰格鲁伯,用简洁的语法代替排版,目前被越来越多的知识工作者、写作爱好者、程序员或研究员广泛使用。其常用的标记符号不超过十个,相对于更为复…

苍穹外卖Day03——总结3

前期文章 文章标题地址苍穹外卖Day01——总结1https://lushimeng.blog.csdn.net/article/details/135466359苍穹外卖Day01——解决总结1中存在的问题https://lushimeng.blog.csdn.net/article/details/135473412苍穹外卖Day02——总结2https://lushimeng.blog.csdn.net/articl…

嵌入式中14 个超级牛的免费开源小工具

Homebrew for macOS 地址:https://brew.sh Mac 上非常好用的包管理工具,很多常见的安装都可以通过 brew install app 或者 brew cask install app 直接安装,类似 apt-get 。 Oh My Zsh 地址:https://github.com/robbyrussell…

系统设计:设计Spotify

初始阶段:基础版本 需求: 初始要求是处理50万用户和3000万首歌曲。我们将有播放歌曲的用户和上传歌曲的艺术家。 1*6V8fzH4kUg780E7AJExMsA.png 估算:数据计算 让我们从估算我们需要的存储开始。首先,我们需要将歌曲存储在某种存储中。 •歌曲…

Machine Vision Technology:Lecture2 Linear filtering

Machine Vision Technology:Lecture2 Linear filtering Types of ImagesImage denoising图像去噪Defining convolution卷积的定义Key properties卷积的关键属性卷积的其它属性Annoying details卷积练习Sharpening锐化Gaussian KernelNoise噪声 分类Gaussian noise高…

Sora:开启视频生成新时代的强大人工智能模型

目录 一、Sora模型的诞生与意义 二、Sora模型的技术特点与创新 三、Sora模型的应用前景与影响 四、面临的挑战与未来发展 1、技术挑战 2、道德和伦理问题 3、计算资源需求 4、未来发展方向 随着信息技术的飞速发展,人工智能(AI)已成为…

jenkins插件下载失败bug

如果遇到安装jenkins插件经常失败并报以下类似错误,很可能是因为jenkins国外官方插件地址下载速度非常慢,我们可以修改为国内插件地址。 java.io.IOException: Failed to load: SCM API Plugin (scm-api 676.v886669a_199a_a_) - Jenkins (2.361.4) or h…

外包干了6个月,技术退步明显。。。。。

先说一下自己的情况,本科生,2019年我通过校招踏入了重庆一家软件公司,开始了我的职业生涯。那时的我,满怀热血和憧憬,期待着在这个行业中闯出一片天地。然而,随着时间的推移,我发现自己逐渐陷入…

Java中的时间API:Date、Calendar到Java.time的演变

引言 在软件开发中,处理时间和日期是一项基本且不可或缺的任务。无论是日志记录、用户信息管理还是复杂的定时任务,准确地处理时间都显得至关重要。然而,时间的处理并不像它看起来那么简单,尤其是当我们考虑到时区、夏令时等因素…

稀疏图带负边的全源最短路Johnson算法

BellmanFord算法 Johnson算法解决的问题 带负权的稀疏图的全源最短路 算法流程 重新设置的每条边的权重都大于或等于0,跑完Djikstra后得到的全源最短路,记得要还原,即:f(u,v) d(u,v) - h[u] h[v] 例题