关于数据库和数据表的基础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 表名;

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

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

相关文章

python内置函数map/filter/reduce详解

在Python中,map(), filter(), 和 reduce() 是内置的高级函数(实际是class),用于处理可迭代对象(如列表、元组等)的元素。这些函数通常与lambda函数一起使用,以简洁地表达常见的操作。下面我将分别解释这三个函数。 1. …

xgboost项目实战-保险赔偿额预测与信用卡评分预测001

目录 算法代码 原理 算法流程 xgb.train中的参数介绍 params min_child_weight gamma 技巧 算法代码 代码获取方式:链接:https://pan.baidu.com/s/1QV7nMC5ds5wSh-M9kuiwew?pwdx48l 提取码:x48l 特征直方图统计: fig, …

各大模型厂商API使用:百度、阿里、豆包、kimi、deepseek

百度ERNIE(支持requests接口) ERNIE Speed、ERNIE Lite免费 免费测试下来模型ernie_speed输出吞吐量计算20-30来个,“{length/cost} tokens/s” 输出总长度/耗时 https://qianfan.cloud.baidu.com/ 文档: https://cloud.baidu.com/doc/WENXINWORKSHOP/s/dltgsna1o a…

智能进化:深度学习与进化计算的融合艺术

《进化深度学习》这本书深入探索了进化计算(EC)在深度学习领域的应用,为读者提供了一套丰富而实用的技术工具,这些工具可以贯穿深度学习的整个过程,助力研究者们解决各种复杂的问题。书中不仅详细介绍了遗传算法和进化…

怎么理解直接程序控制和中断方式?

直接程序控制 看完之后是不是依然一头雾水?来看下面两个例子 无条件传送 假设你正在使用键盘打字。当你敲击键盘上的一个键时,键盘会立即产生一个信号(即输入数据),并且这个信号会立即被电脑接收。在这个过程中&…

比较两列数据

点其中一个数据 删掉S,回车 大的标红

v-cloak 用于在 Vue 实例渲染完成之前隐藏绑定的元素

如果你是后端开发者&#xff08;php&#xff09;&#xff0c;在接触一些vue2开发的后台时&#xff0c;会发现有这段代码&#xff1a; # CDN <script src"https://cdn.jsdelivr.net/npm/vue2/dist/vue.js"></script> # 或 <script src"https://cd…

三十六计的笔记

系列文章目录 三十六计的笔记 文章目录 系列文章目录1、瞒天过海2、围魏救赵3、借刀杀人4、以逸待劳5、趁火打劫6、声东击西7、无中生有8、暗渡陈仓9、隔岸观火10、笑里藏刀11、李代桃僵12、顺手牵羊13、打草惊蛇14、借尸还魂15、调虎离山16、欲擒故纵17、抛砖引玉18、擒贼擒王…

9.3 Go语言入门(变量声明和函数调用)

Go语言入门&#xff08;变量声明和函数调用&#xff09; 目录二、变量声明和函数调用1. 变量声明1.1 使用 var 关键字声明1.2 简短声明1.3 零值1.4 常量 2. 函数调用2.1 函数定义2.2 多个返回值2.3 命名返回值2.4 可变参数2.5 匿名函数和闭包 目录 Go 语言&#xff08;Golang&a…

粤嵌—2024/5/21—打家劫舍(✔)

代码实现&#xff1a; int rob(int *nums, int numsSize) {if (numsSize 1) {return nums[0];}if (numsSize 2) {return fmax(nums[0], nums[1]);}int dp[numsSize];dp[0] nums[0];dp[1] fmax(nums[0], nums[1]);for (int i 2; i < numsSize; i) {dp[i] fmax(dp[i - 1…

高中数学:平面向量-正交分解、坐标表示、坐标运算

一、正交分解 二、坐标表示 这里注意一点 坐标A(x,y)与向量 a → \mathop{a}\limits ^{\rightarrow} a→的坐标记作&#xff1a; a → \mathop{a}\limits ^{\rightarrow} a→(x,y)&#xff0c;表示方式的区别 引申 三、加减运算的坐标表示 四、数乘运算的坐标表示 引申 两向量…

Go微服务: Nacos的搭建和基础API的使用

Nacos 概述 文档&#xff1a;https://nacos.io/docs/latest/what-is-nacos/搭建&#xff1a;https://nacos.io/docs/latest/quickstart/quick-start-docker/有很多种搭建方式&#xff0c;我们这里使用 docker 来搭建 Nacos 的搭建 这里&#xff0c;我们选择单机模式&#xf…

pytest-sugar插件:对自动化测试用例加入进度条

摘要 在自动化测试过程中&#xff0c;测试进度的可视化对于开发者和测试工程师来说非常重要。本文将介绍如何使用pytest-sugar插件来为pytest测试用例添加进度条&#xff0c;从而提升测试的可读性和用户体验。 1. 引言 自动化测试是软件开发过程中不可或缺的一部分&#xff…

Linux系统命令traceroute详解(语法、选项、原理和实例)

目录 一、traceroute概述 二、语法 1、基本语法 2、命令选项 三、帮助信息 四、示例 1. 使用默认模式&#xff08;ICMP Echo&#xff09;追踪到目标主机 2. 使用UDP模式&#xff08;需要root权限&#xff09;追踪到目标主机 3. 不解析IP地址为主机名&#xff0c;直接显…

纯电动汽车硬件在环测试

纯电动汽车硬件在环测试技术研究综述 1、新能源汽车概述 随着新能源汽车“电动化、智能化、网联化、共享化”进程的不断推进&#xff0c;新能源汽车的整体性能得到显著提高&#xff0c;纯电动汽车已经逐渐走进大众视野&#xff0c;消费者对于新能源汽车的认可度和购买欲望也稳…

让大模型变得更聪明三个方向

让大模型变得更聪明三个方向 随着人工智能技术的飞速发展&#xff0c;大模型在多个领域展现出了前所未有的能力&#xff0c;但它们仍然面临着理解力、泛化能力和适应性等方面的挑战。那么&#xff0c;如何让大模型变得更聪明呢&#xff1f; 方向一&#xff1a;算法创新 1.1算…

粤嵌—2024/5/20—三角形最小路径和(✔)

代码实现&#xff1a; int minimumTotal(int **triangle, int triangleSize, int *triangleColSize) {if (triangleSize 1) {return triangle[0][0];}for (int i 1; i < triangleSize; i) {for (int j 0; j < triangleColSize[i]; j) {int x i - 1;int y1 j - 1, y2…

【数据结构】快速排序详解!

文章目录 1. 快速排序的非递归版本2. 快速排序2.1 hoare 版本一2.2 挖坑法 &#x1f427;版本二2.3 前后指针 版本三2.4 调用以上的三个版本的快排 3. 快速排序的优化 1. 快速排序的非递归版本 &#x1f192;&#x1f427;关键思路&#xff1a; &#x1f34e;① 参数中的begin…

力扣刷题---LCS 02. 完成一半题目【简单】

题目描述 有 N 位扣友参加了微软与力扣举办了「以扣会友」线下活动。主办方提供了 2*N 道题目&#xff0c;整型数组 questions 中每个数字对应了每道题目所涉及的知识点类型。 若每位扣友选择不同的一题&#xff0c;请返回被选的 N 道题目至少包含多少种知识点类型。 示例 1&…

YOLOv10 论文学习

论文链接&#xff1a;https://arxiv.org/pdf/2405.14458 代码链接&#xff1a;https://github.com/THU-MIG/yolov10 解决了什么问题&#xff1f; 实时目标检测是计算机视觉领域的研究焦点&#xff0c;目的是以较低的延迟准确地预测图像中各物体的类别和坐标。它广泛应用于自动…