【MySQL中对表的常见操作】 —— 第四天

2023-11-17

1.删除表的基础语法

drop table 表名 【普通删除】
drop table if exists 表名 【先判断该表是否存在】

2.向表中插入数据的基础语法

insert into 表名(字段1,字段2,…,字段n) values(字段值,字段值,…,字段值)
添加数据

当插入字段的顺序与表中默认顺序相同时,可以省略原语句中表名后面的字段
查看记录是否插入成功:
查询
没有给其他字段指定值时,默认为NULL。【insert into t_class(classno) values(3)】
插入指定字段

每成功执行一条insert 语句就会多一条记录,所以在上述语句执行后,会出现一条课程号为3,然而课程名为null的记录
在这里插入图片描述

PS:1.如何插入日期型数据:
(1)首先在此介绍两个函数:

str_to_date(‘日期字符串’, ‘日期格式’) 函数:可以将字符串转换成混合日期
date_format(日期类型数据,日期格式)函数:可以将日期格式化成字符串类型

(2)MySQL的日期格式: %Y %m %d %h %i %s  -  年 月 日 时 分 秒
(3)当要插入的日期字符串刚好对应 %Y-%m-%d 时,可以不使用转换函数,MySQLl可以完成自动的日期转换。
(4)MySQL窗口显示出来的信息都是字符串类型,所以在查询日期时,MySQL的底层会自动将日期转换成默认的日期字符串类型【%Y-%m-%d】.
(5)date 与 datetime 的区别:

date是短日期,只包含年月日,语法格式: %Y-%m%d
datetime是长日期,包含年月日时分秒,语法格式: %Y-%m-%d %h-%i-%s

(6)在MySQL中可以通过now()函数获取当前系统的时间【包含年月日时分秒】

3.创建表的基础语法

create table 表名(
	属性1  数据类型,
	属性2 数据类型,
	属性3 数据类型,
	......
	属性n 数据类型
);`

表名与属性见名达意即可,MySQL中的数据类型可以参考上一篇文章。

创建表时注意事项:
(1)可以通过default设置默认属性列,就是这列的属性值在创建表的时候就固定了,但可以后期通过数据更新修改其中的值。【sex varchar(10) default ‘man’】
(2)数据库的命名规范:所有标识符全部小写,单词与单词之间用下划线连接。

4.更新表的语法:

update 表名 set 字段1 =, 字段2 =... 字段n =where 条件

数据更新
更新课程号为3的课程的名字,也可以理解为给那个空值补上。

update t_class set classname = '程序设计' where classno = 3;

利用 select 语句查看数据是否更新成功

select * from t_class;

5.删除表中数据

基 础 语 法 : \color{pink}{基础语法:}

delete from 表名 where 条件;

注意:(1)当利用delete 关键字删除表忘记添加条件时,会将整张表中的数据都会删除。但是并不会删除表结构,这个表本身还是存在的,只是表中没有记录。
(2)如果想将整张表彻底删除要通过drop关键字来完成。
程 序 演 示 : \color{pink}{程序演示:} :
先查看t_class表:
t_class表
删除表中所有数据并查看:

delete from t_class;
select * from t_class;

删除表并查看
将表彻底删除

drop t_class;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【MySQL中对表的常见操作】 —— 第四天 的相关文章

  • 将记录分成两列

    我的数据库中有一个 学生 表 其中包含大约 5 000 条记录 我想将这些记录显示在two分区 如何在不执行查询两次的情况下做到这一点 仅使用单个查询 显示示例http www freeimagehosting net uploads f1
  • ActiveRecord3死锁重试

    Rails 3 或 ActiveRecord 3 是否有任何插件可以复制旧版本死锁重试 http agilewebdevelopment com plugins deadlock retry插入 或者 该插件仍然适用于 Rails 3 吗
  • 如何在 PostgreSQL 中将数据库从一台服务器移动到另一台服务器?

    我正在尝试将数据库从旧服务器移动到新服务器 任何帮助 将不胜感激 Just pipe http www postgresql org docs current interactive migration html从旧服务器转储到新服务器 p
  • PDO SQLSRV 和 PDO MySQL 在获取 int 或 float 时返回字符串

    当您获取时 PDO MS SQL Server 和 PDO MySQL 都会返回一个字符串数组 即使列的 SQL 类型本应是数字类型 例如 int 或 float 我设法解决了这个问题 但我想了解为什么它们一开始就这样设计 是不是因为PDO
  • 什么是数据库池?

    我只是想了解数据库连接池的概念以及它是如何实现的 数据库联系池是一种用于保持数据库连接打开的方法 以便其他人可以重用它们 通常 打开数据库连接是一项昂贵的操作 尤其是在数据库位于远程的情况下 您必须打开网络会话 进行身份验证 检查授权等等
  • Sequelize.js - “不关联到”

    我在从数据库获取完整数据时遇到一些问题 那是我的模型 User module exports function sequelize DataTypes return sequelize define user id type DataTyp
  • Python:如何使用生成器来避免 sql 内存问题

    我有以下方法来访问 mysql 数据库 并且查询在服务器中执行 我无权更改有关增加内存的任何内容 我对生成器很陌生 并开始阅读更多有关它的内容 并认为我可以将其转换为使用生成器 def getUNames self globalUserQu
  • MYSQL - 查找最近的前一天

    我可以以某种方式 不使用 PHP 找到一周中最近的前一天日期吗 Like 最近的上一个星期二的日期是哪一天 CURDATE INTERVAL WEEKDAY CURDATE wday IF WEEKDAY CURDATE gt wday 0
  • 第三个下拉菜单不从数据库填充

    我有以下 Index php
  • 如何在Mysql中仅将不同的值从一个表复制到另一个表?

    我有一个大约 2 5GB 的 MySql 数据库 表 A 具有以下列 anoid query date item rank url 我刚刚创建了另一个仅包含列的表 b query and date 我想在查询列中插入所有不同的记录 及其各自
  • 如何在 Visual Studio 中更改 Azure 数据库表的列顺序

    我整个下午都在寻找在 MS Visual Studio 2022 中重新排序 Azure 数据库表列的方法 没有运气 在其他应用程序中 可以通过拖动或剪切和粘贴轻松重新排列列 这里无能为力 此时 我什至不确定可以在 VS 中移动列 我只对
  • InnoDB 因读未提交而死锁! - Java - Glassfish - EJB3(JPA/Hibernate)

    几天来 我在使用 Glassfish EJB3 和 Mysql InnoDB 的 Java 应用程序上遇到了死锁问题 配置 Mysql InnoDB Ver 14 12 Distrib 5 0 51a 适用于 debian linux gn
  • 将第三个表链接到多对多关联中的桥接表

    设计这个数据库的正确方法是什么 这是我设置表格的方式 我在名为 教师 的表和名为 仪器 的表之间存在多对多关系 然后我有一个连接两者的桥接表 我想将另一个表与 BRIDGE 表关联起来 意思是乐器 老师的组合 该表有 3 行 指定老师可以教
  • Mysql 将 int 转换为 MAC

    我有一些数据可以转换 其中有 2 列 其中一列有 IP 它包含整数值 我在 mysql 查询中使用了以下函数 是否有一个函数可以用来转换我的 mac 列 其中包含整数和数据类型是bigint to MAC地址 SELECT INET NTO
  • Flask-login:无法理解它是如何工作的

    我试图理解如何Flask Login https flask login readthedocs org en latest works 我在他们的文档中看到他们使用预先填充的用户列表 我想使用数据库存储的用户列表 但是 我不明白其中的一些
  • MySQL 查询到 CSV [重复]

    这个问题在这里已经有答案了 有没有一种简单的方法来运行MySQL查询来自linux命令行并以csv格式输出结果 这就是我现在正在做的事情 mysql u uid ppwd D dbname lt lt EOQ sed e s g tee l
  • Java JDBC:更改表

    我希望对此表进行以下修改 添加 状态列 varchar 20 日期列 时间戳 我不确定该怎么做 String createTable Create table aircraft aircraftNumber int airLineCompa
  • 映射 mysql 中同一个表的多个值

    您好 我必须使用另一个表中的值 id 获取文本值 表 1 包含值 ID 表 2 包含名称和值 ID 表 1 SEVERITY OCCURENCE DETECTABILITY 2 3 4 表 2 id name value 1 Very Hi
  • 在 MySQL 中存储表情符号的编码问题:如何使用 Prisma ORM 在 NodeJS 中定义字符排序规则?

    亲爱的 Nodejs 专家和数据库专家 我们在 MySQL 数据库中存储表情符号和其他特殊字符时遇到问题 我们使用 Prisma 得到一个错误 这是我们使用的 ORM 参数无法从排序规则 utf8 general ci 转换为 utf8mb
  • 如何修改现有表以添加时区

    我有一个包含 500 多个表的大型应用程序 我必须将应用程序转换为时区感知 当前应用程序使用new java util Date GETDATE 与服务器的时区 即没有任何时区支持 我已将这项任务分为几个步骤 以便于开发 我确定的第一个步骤

随机推荐