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

关于数据库和数据表的基础SQL

目录

一. 数据库的基础SQL

1. 创建数据库

2. 查看当前有哪些数据库

3. 选中数据库

4. 删除数据库

5. 小结

二. 数据表的基础SQL

1. 创建数据表

2. 查看当前数据库中有哪些表

3. 查看指定表的详细情况(查看表的结构)

4. 删除表

5. 小结 


一. 数据库的基础SQL

1. 创建数据库

MySQL中,创建数据库的基本语法格式如下:

create database 数据库名;

例如:

注意:

(1) 这里的 0.00sec (0.00 second) 是表示操作时间小于10ms, 而不是没有时间. (这里再给大家补充一下计算机中常用的时间单位: 秒s, 毫秒ms, 微秒us, 纳秒ns, 皮秒ps, 他们之间的换算关系是1000)

(2) 在同一个MySQL服务器上,  数据库的名字要保持唯一.

(3) 在给数据库命名时, 我们一般不建议数据库名和关键字相同, 但是如果真的需要, 我们也可以搬到: 给数据库名加上单引号即可完成这样的操作. 例如: order是关键字, 但是我们也可以给某数据库命名为order.

如上图, order不加双引号,报错. order加上双引号, 创建数据库成功.

(4) 指定字符集: MySQL57 默认的字符集是表示拉丁文的, 所以我们在使用MySQL57创建数据库的时候,建议指定好字符集.(可以表示中文的字符集我们一般使用utf8).

指定字符集的SQL语句我们一般用 character setcharset (缩写).

 (5) 指定条件: 在创建数据库的时候, 我们还可以指定某些条件. 例如: 创建数据库db4, 如果数据库db4不存在, 则创建数据库db4; 如果存在, 则什么都不做.

 (6) 通过show warnings 可以查看警告具体内容.

2. 查看当前有哪些数据库

 MySQL中,查看当前数据库的基本语法格式如下:

show databases;

注意:

(1) 每个SQL语句都是以 ";" 结尾的.

(2) show 和 databases之间至少加一个空格.

(3) SQL不区分大小写, 想用哪个就用哪个.

(4) 命令行中, 鼠标选中文本后: 按下enter是复制, 按下鼠标右键是粘贴.

3. 选中数据库

首先我们要明白数据库组织数据的规则: 一个数据库服务器上, 有很多很多数据库, 每个数据库又有很多数据表,每个数据表包含若干行和列.

因此, 我们要操作某个数据表, 就需要先选中这个表所在的数据库, 然后再进行操作.

 MySQL中,选中数据库的基本语法格式如下:

use 数据库名;

4. 删除数据库

 MySQL中,删除数据库的基本语法格式如下:

drop database 数据库名;

注意: 删除数据库是一个非常危险的操作, 因为一旦将数据库删除,就无法恢复.

5. 小结

数据库涉及到的4个核心SQL:

(1) 创建数据库: create database 数据库名;

(2) 查看当前数据库: show databases;

(3) 选中数据库: use 数据库名;

(4) 删除数据库: drop database 数据库名;

补充: 注释的表示方式:

(1) comment '注释内容' : 只能在建表语句中使用, 用来说明每个列是表示什么的.(有很大的局限性)

(2) -- 注释内容, 或 # 注释内容 : 在哪都能使用. (更加常用)

二. 数据表的基础SQL

1. 创建数据表

 MySQL中,创建数据表的基本语法格式如下:

create table 表名(列名 类型 ,  列名 类型 ......)

例如:

注意:

(1) 在关系型数据库中, 每个表有哪些列, 每个列叫什么名字是什么类型,都是提前确定好的.(后续往表里存储的数据,都要严格遵循这个规则).

(2) 指定列名和类型的时候: 列名在前, 类型在后. (这和其他一些语言如Java,C++有很大出入, 需要分清楚.)

2. 查看当前数据库中有哪些表

 MySQL中,查看数据表的基本语法格式如下:

show tables;

3. 查看指定表的详细情况(查看表的结构)

查看表的结构(有那些列, 每个列是什么情况), 无法查看到表中的具体内容.

 MySQL中,查看数据表结构的基本语法格式如下:

desc 表名;

注意, 这里的 desc 是describe的缩写.

 

这里我们来分析一下该表的信息:

第一列: type表示类型; int(11)中的11是位宽, 表示该数据类型在控制台上显示的时候, 最多显示11个字符这么宽(但在硬盘上存储时仍然是4个字节.  那么11是怎么来的呢? 我们知道int的表示范围是-21亿到21亿, -21 0000 0000 位宽就是11个字符 ) .

第二列: Null这一列表示"是否允许为空". 两个yes表示这两列所存放的数据都允许为空(可以不填).

第三列: key表示键(有主键和外键)(后续会解释), 这里什么都不写表示没有键.

第四列: default表示本列默认值是什么.(在这里两列的默认值都是null).

第五列: extra:它提供了关于表的一些额外信息。这些信息可能包括关于表的一些特殊特性,比如是否是临时表、是否使用了压缩、是否包含了生成列等.

4. 删除表

 MySQL中,删除表的基本语法格式如下:

drop table 表名;

例如, 我们把表tb2删掉.

注意: 删除表操作也是极其危险的操作, 谨慎使用. 

5. 小结 

数据表涉及到的4个核心SQL:

(1) 创建表: create table 表名(列名 类型, 列名 类型);

(2) 查看当前数据库的表: show tables;

(3) 查看表结构: desc 表名;

(4) 删除表: drop table 表名;

相关文章:

关于数据库和数据表的基础SQL

目录 一. 数据库的基础SQL 1. 创建数据库 2. 查看当前有哪些数据库 3. 选中数据库 4. 删除数据库 5. 小结 二. 数据表的基础SQL 1. 创建数据表 2. 查看当前数据库中有哪些表 3. 查看指定表的详细情况(查看表的结构) 4. 删除表 5. 小结 一. 数据库的基础SQL 1. 创建…...

【C语言深度解剖】(14):结构体内存对齐(详细配图讲解)

🤡博客主页:醉竺 🥰本文专栏:《C语言深度解剖》 😻欢迎关注:感谢大家的点赞评论关注,祝您学有所成! ✨✨💜💛想要学习更多C语言深度解剖点击专栏链接查看&…...

学习笔记:C语言的32个关键字

一、标准C语言的32个关键字 1、基本数据类型: signed unsigned char int float double short long void 2、构造数据类型: struct union enum 3、数据存储类别: auto static extern register 4、数据优化: const volatile 5、9条…...

嵌入式学习 (Day:27 IPC --- 进程间通信)

IPC 进程间通信 interprocess communicate (即:进程间进行数据交换) 三大类: 进程间通信的方式(共8种) 1、古老的通信方式(Linux设计时就有的) 无名管道 有名…...

Python考试复习--day2

1.出租车计费 mile,waitmap(int,input().split(,)) if mile<3:money13wait*1 elif mile>3 and mile<15:money13(mile-3)*2.3wait*1 else:money1312*2.3(mile-15)*2.3*(10.5)wait*1 print({:.0f}.format(money)) 【知识点1】&#xff1a; map() 函数 【知识点1】&…...

整理好了!2024年最常见 20 道 Redis面试题(九)

上一篇地址&#xff1a;整理好了&#xff01;2024年最常见 20 道 Redis面试题&#xff08;八&#xff09;-CSDN博客 十七、Redis 的过期策略有哪些&#xff1f; Redis 的过期策略主要有三种&#xff1a; 定时删除&#xff1a;当为一个键设置了过期时间后&#xff0c;Redis 会…...

IDEA使用Maven打包项目的所有的依赖

要使用 Maven 命令将 Spring Boot 项目的依赖打包到 lib 文件夹中&#xff0c;你可以在终端中运行以下命令&#xff1a; mvn dependency:copy-dependencies -DoutputDirectory./lib这个命令会将项目的所有依赖&#xff08;包括运行时依赖&#xff09;复制到当前目录的 lib 文件…...

【C++ 】学习问题及补充

一.自定义类型不初始化直接就赋值&#xff0c;比如string类会怎么样 vectr<string>里已经给每个string对象已经分配好空间&#xff0c;为什么不初始化再赋值会报错 在C中&#xff0c;std::string类是一个动态字符串类&#xff0c;它内部管理着一个字符数组&#xff0c;用…...

内存泄漏案例分享3-view的内存泄漏

案例3——view内存泄漏 前文提到&#xff0c;profile#Leaks视图无法展示非Activity、非Fragment的内存泄漏&#xff0c;换言之&#xff0c;除了Activity、Fragment的内存泄漏外&#xff0c;其他类的内存问题我们只能自己检索hprof文件查询了。 下面有一个极佳的view内存泄漏例子…...

红外超声波雷达测距

文章目录 一HC-SR04介绍1HC-SR04简介及工作原理 二用HAL库实现HC-SR04测量距离1STM32CubeMX配置2keil53代码的添加 三效果 一HC-SR04介绍 1HC-SR04简介及工作原理 超声波是振动频率高于20kHz的机械波。它具有频率高、波长短、绕射现象小、方向性好、能够成为射线而定向传播等…...

AIGC 008-IP-Adapter文本兼容图像提示适配器用于文本到图像扩散模型

AIGC 008-IP-Adapter文本兼容图像提示适配器用于文本到图像扩散模型&#xff01; 文章目录 0 论文工作1 论文方法2 效果 0 论文工作 这篇论文介绍了 IP-Adapter&#xff0c;一种 高效地将预训练的图像到图像转换模型适应到新领域 的方法。它通过在预训练模型的 输入端 添加一个…...

Java入门基础学习笔记50——ATM系统

1、项目演示&#xff1b; 2、项目技术实现&#xff1b; 1&#xff09;面向对象编程&#xff1a; 每个账户都是一个对象&#xff0c;所以要设计账户类Account&#xff0c;用于创建账户对象封装账户信息。ATM同样是一个对象&#xff0c;需要设计ATM类&#xff0c;代表ATM管理系…...

# linux 中使用 visudo 命令,怎么保存退出?

linux 中使用 visudo 命令&#xff0c;怎么保存退出&#xff1f; 在 visudo 中保存并退出的方法取决于您使用的文本编辑器。通常情况下&#xff0c;visudo 会使用 vim 或 vi 或 Nano 作为默认的文本编辑器。 1、使用 Vim 或 vi 编辑器&#xff1a; 按下 Esc 键退出编辑模式&…...

springboot项目,@Test写法 @Before @After

某文件示例 package cn.xxx.crm.boss;import cn.xxxx.crm.manager.mq.rabbit.AliyunCredentialsProvider; import com.rabbitmq.client.AMQP; import com.rabbitmq.client.Channel; import com.rabbitmq.client.Connection; import com.rabbitmq.client.ConnectionFactory; im…...

vue3的核心API功能:computed()API使用

常规使用方法: 这样是常规使用方法. 另一种,可写计算属性的使用方法: 这样分别定义computed的get回调函数和set回调函数, 上面例子定义了plusOne.value的值为1, 那么这时候就走了computed的set回调函数,而没有走get回调函数. 当我们打印plusOne.value的值的时候,走的是get的…...

Bootstrap5

Bootstrap5-容器 容器是Bootstrap—个基本的构建块&#xff0c;它包含、填充和对齐给定设备或视口中的內容。 Bootstrap 需要一个容器元素来包裏网站的内容 我们可以使用以下两个容器类&#xff1a; .container 类用于固定宽度并支持响应式布局的容器。.container-fluid 类用…...

宝塔部署纯Vue项目,无后端

1.打包项目 生成一个dist文件夹 2.创建云服务器根目录 3.创建站点 4.上传文件 5.访问...

spring boot3整合邮件服务实现邮件发送功能

⛰️个人主页: 蒾酒 &#x1f525;系列专栏&#xff1a;《spring boot实战》 目录 内容概要 开通服务 依赖引入 配置属性 创建邮件发送工具类 测试 最近发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家…...

算法刷题day54:搜索(一)

目录 引言一、池塘计数二、城堡问题三、山峰和山谷四、迷宫问题五、武士风度的牛六、抓住那头牛七、矩阵距离八、魔板 引言 针对于蓝桥杯&#xff0c;搜索问题还是非常之重要的&#xff0c;在省赛前深知暴搜的重要性&#xff0c;所以提前先把提高课的搜索一章给看了&#xff0…...

深入了解Redis的过期策略和内存淘汰机制

✨✨谢谢大家捧场&#xff0c;祝屏幕前的小伙伴们每天都有好运相伴左右&#xff0c;一定要天天开心哦&#xff01;✨✨ &#x1f388;&#x1f388;作者主页&#xff1a; 喔的嘛呀&#x1f388;&#x1f388; ✨✨ 帅哥美女们&#xff0c;我们共同加油&#xff01;一起进步&am…...

8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂

蛋白质结合剂&#xff08;如抗体、抑制肽&#xff09;在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上&#xff0c;高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术&#xff0c;但这类方法普遍面临资源消耗巨大、研发周期冗长…...

云原生玩法三问:构建自定义开发环境

云原生玩法三问&#xff1a;构建自定义开发环境 引言 临时运维一个古董项目&#xff0c;无文档&#xff0c;无环境&#xff0c;无交接人&#xff0c;俗称三无。 运行设备的环境老&#xff0c;本地环境版本高&#xff0c;ssh不过去。正好最近对 腾讯出品的云原生 cnb 感兴趣&…...

Spring是如何解决Bean的循环依赖:三级缓存机制

1、什么是 Bean 的循环依赖 在 Spring框架中,Bean 的循环依赖是指多个 Bean 之间‌互相持有对方引用‌,形成闭环依赖关系的现象。 多个 Bean 的依赖关系构成环形链路,例如: 双向依赖:Bean A 依赖 Bean B,同时 Bean B 也依赖 Bean A(A↔B)。链条循环: Bean A → Bean…...

【Redis】笔记|第8节|大厂高并发缓存架构实战与优化

缓存架构 代码结构 代码详情 功能点&#xff1a; 多级缓存&#xff0c;先查本地缓存&#xff0c;再查Redis&#xff0c;最后才查数据库热点数据重建逻辑使用分布式锁&#xff0c;二次查询更新缓存采用读写锁提升性能采用Redis的发布订阅机制通知所有实例更新本地缓存适用读多…...

三分算法与DeepSeek辅助证明是单峰函数

前置 单峰函数有唯一的最大值&#xff0c;最大值左侧的数值严格单调递增&#xff0c;最大值右侧的数值严格单调递减。 单谷函数有唯一的最小值&#xff0c;最小值左侧的数值严格单调递减&#xff0c;最小值右侧的数值严格单调递增。 三分的本质 三分和二分一样都是通过不断缩…...

【实施指南】Android客户端HTTPS双向认证实施指南

&#x1f510; 一、所需准备材料 证书文件&#xff08;6类核心文件&#xff09; 类型 格式 作用 Android端要求 CA根证书 .crt/.pem 验证服务器/客户端证书合法性 需预置到Android信任库 服务器证书 .crt 服务器身份证明 客户端需持有以验证服务器 客户端证书 .crt 客户端身份…...

CppCon 2015 学习:REFLECTION TECHNIQUES IN C++

关于 Reflection&#xff08;反射&#xff09; 这个概念&#xff0c;总结一下&#xff1a; Reflection&#xff08;反射&#xff09;是什么&#xff1f; 反射是对类型的自我检查能力&#xff08;Introspection&#xff09; 可以查看类的成员变量、成员函数等信息。反射允许枚…...

SQL进阶之旅 Day 22:批处理与游标优化

【SQL进阶之旅 Day 22】批处理与游标优化 文章简述&#xff08;300字左右&#xff09; 在数据库开发中&#xff0c;面对大量数据的处理任务时&#xff0c;单条SQL语句往往无法满足性能需求。本篇文章聚焦“批处理与游标优化”&#xff0c;深入探讨如何通过批量操作和游标技术提…...

计算机系统结构复习-名词解释2

1.定向&#xff1a;在某条指令产生计算结果之前&#xff0c;其他指令并不真正立即需要该计算结果&#xff0c;如果能够将该计算结果从其产生的地方直接送到其他指令中需要它的地方&#xff0c;那么就可以避免停顿。 2.多级存储层次&#xff1a;由若干个采用不同实现技术的存储…...

Docker、Wsl 打包迁移环境

电脑需要开启wsl2 可以使用wsl -v 查看当前的版本 wsl -v WSL 版本&#xff1a; 2.2.4.0 内核版本&#xff1a; 5.15.153.1-2 WSLg 版本&#xff1a; 1.0.61 MSRDC 版本&#xff1a; 1.2.5326 Direct3D 版本&#xff1a; 1.611.1-81528511 DXCore 版本&#xff1a; 10.0.2609…...