SQL语句详解二-DDL(数据定义语言)

news2024/9/30 17:30:20

文章目录

    • 操作数据库
      • 创建:Create
      • 查询:Retrieve
      • 修改:Update
      • 删除:Delete
      • 使用数据库
    • 操作表
      • 常见的几种数据类型
      • 创建:Create
        • 复制表
      • 查询:Retrieve
      • 修改:Update
      • 删除:Delete

操作数据库

创建:Create

命令作用
create database 数据库名称;创建数据库
create database if not exists 数据库名称;判断此名字数据库不存在,再创建数据库
create database 数据库名称 character set 字符集名创建数据库,并指定字符集


查询:Retrieve

命令作用
show databases;查询所有数据库名称
show create database 数据库名称;查询数据库创建语句


修改:Update

命令作用
alter database 数据库名称 charater set 字符集名称;修改数据库的字符集

注意:先执行 修改语句,再执行,查看语句,发现已经数据库字符集已经被修改


删除:Delete

命令作用
drop database 数据库名称;删除数据库
drop database if exists 数据库名称;判断数据库存在,再删除


使用数据库

命令作用
select database();查询当前正在使用的数据库名称
use 数据库名称;使用数据库

操作表

常见的几种数据类型

数据类型注意
int整数类型
double小数类型float(5,2)
date日期(年月日)yyyy-MM-dd
datetime日期(年月日时分秒)yyyy-MM-dd HH:mm:ss
varchar字符串
timestamp时间戳类型(年月日时分秒)如果将来不给这个字段赋值或赋值为null,则默认使用当前系统时间,来自动赋值
  • MySQL5.6之后,时间戳要这样写,才能生效

    格式:列名 数据类型 default current_timestamp
    
    current_timestamp		// 当向数据表执行 插入操作时,则无论这个字段有没有值都插入当前系统时间
    on update current_timestamp  		 // 在后续数据表中数据发生更新操作将自动更新执行时间
    

创建:Create

  • 创建表格语法

    CREATE TABLE 表名(
    	列名1 数据类型1,
        列名2 数据类型2,
        列名3 数据类型3...
        列名n 数据类型n						-- 注意:最后一行,不需要逗号
    );										-- 不要忘了 ; 
    
  • 代码示例

    CREATE TABLE student(
    	sid INT,	  		-- 学生编号
    	sname VARCHAR(20),	-- 姓名
    	score FLOAT(5,2)  	-- 成绩,小数点保留2位
    );
    
复制表
  • 复制表格语法

    CREATE TABLE 表名 LIKE 被复制的表名; 		-- 注意:只复制表结构,但是表中数据并不复制
    
  • 代码示例

    CREATE TABLE s LIKE student;
    

查询:Retrieve

  • 查询命令

    命令作用
    show tables;查询某个数据库中所有表的名称
    desc 表名;查询表结构
  • 代码示例

    SHOW TABLES;			-- 显示当前数据库所有的表格名称
    
    DESC student;			-- 显示 student 表的结构
    

修改:Update

  • 修改命令

    命令作用
    alter table 旧的表名 rename to 新的表名;修改表名
    alter table 表名 character set 字符集名称;修改表的字符集
    alter table 表名 add 新列名 新数据类型;表中添加新的一列
    alter table 表名 change 旧列名 新列名 新数据类型;修改列名和数据类型
    alter table 表名 modify 旧列名 新数据类型;修改列的数据类型
    alter table 表名 drop 列名;删除列
  • 代码示例

    ALTER TABLE s RENAME TO stu;					-- 将表名 s 修改成 stu
    
    ALTER TABLE stu CHARACTER SET gbk;				-- 修改表的字符集为 gbk
    
    ALTER TABLE stu ADD address VARCHAR(100);		-- 添加新的一列 地址 字符数据类型
    
    ALTER TABLE stu CHANGE address ads VARCHAR(80); -- 将address列名修改成ads,数据类型也修改
    
    ALTER TABLE stu MODIFY sid VARCHAR(11);			-- 更改 sid 列的数据类型
    
    ALTER TABLE stu DROP ads;						-- 删除 ads 列 
    

    大家可一步一步执行,去左侧表中查看下变化。


删除:Delete

  • 删除命令

    命令作用
    drop table 表名;删除表
    drop table if exists 表名;判断表存在,再删除
  • 示例代码

    DROP TABLE stu;				-- 删除 stu 表
    
    DROP TABLE IF EXISTS stu;	-- 判断 stu 表存在,再删除
    

    可对比着删除数据库来学习!

大家接下来可阅读这篇文章:SQL语句详解三-DML(数据操作语言)

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

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

相关文章

Spring Cloud配置中心

微服务意味着要将单体应用中的业务拆分成一个个子服务 , 每个服务的粒度相对较小 ,因此系统中会出现大量的服务。 由于每个服务都需要必要的配置信息才能运行 , 所以一套集中式的 , 动态的配置管理设施是必不可少的。 Spring Cloud 提供了 ConfigServer 来解决这个问题 . Sp…

客户端请求服务器的步骤

当我们在浏览器地址栏输入’http://www.xxx.com/api/xxx"时,客户端是如何找到服务器并发送请求的? 1.先找到服务器 a.检测浏览器缓存有没有缓存该域名对应的IP地址,有则通过IP地址取找服务器。 b.检测本地的hosts文件,是否有…

ROS2——launcher

在ROS2中,launcher 文件是通过Python构建的,它们的功能是声明用哪些选项或参数来执行哪些程序,可以通过 launcher 文件快速同时启动多个节点。一个 launcher 文件内可以引用另一个 launcher 文件。 使用 launcher 文件 ros2 launch 可以代替…

STM32 SPI通信协议3——读取MAX6675温度传感器

在上两章中,我们已经配置了相应的GPIO和SPI功能。这里说一下MAX6675如何读取温度。 从MAX6675手册中我们可以看到,当0的时候SCK启动,数据线开始发送信息,此时可以读取数据,当数据读完后,再拉高电平停止发送…

VMware Workstation17安装教程及安装Ubuntu22.04系统

编程如画,我是panda! 前言 VMware Workstation Pro 是一款高级虚拟化软件,使用户能够在单一计算机上同时运行多个操作系统,如Windows、Linux和macOS,而无需重新启动。具备虚拟机快照、高级网络配置、克隆和复制功能&a…

Redis-浅谈redis.conf配置文件

Redis.conf Redis.conf是Redis的配置文件,它包含了一系列用于配置Redis服务器行为和功能的选项。 以下是Redis.conf中常见的一些选项配置: bind: 指定Redis服务器监听的IP地址,默认为127.0.0.1,表示只能本地访问,可以…

大数据毕业设计:房屋数据分析可视化系统 预测算法 可视化 商品房数据 Flask框架(源码+讲解视频)✅

毕业设计:2023-2024年计算机专业毕业设计选题汇总(建议收藏) 毕业设计:2023-2024年最新最全计算机专业毕设选题推荐汇总 🍅感兴趣的可以先收藏起来,点赞、关注不迷路,大家在毕设选题&#xff…

网卡高级设置-提高网络环境

网卡高级设置,提高网络质量排除一些连接问题 一、有线网卡 1、关闭IPv6; 可以关闭协议版本6,因为它会引起一些网络连接问题,而且现在几乎用不到IP6。 2、关闭节约电源模式; 右击计算机->设备->设备管理器-&…

Unity游戏开发面试知识点全解读

Unity游戏开发面试知识点全解读 在数字化世界中,Unity游戏开发不仅是一种艺术形式和商业活动,而且已成为推动整个数字娱乐产业创新和进步的重要力量。Unity以其易用性、高效性和灵活性,赢得了全球开发者的青睐,从独立开发者到大型…

MySQL题目示例

文章目录 1.题目示例 1.题目示例 09)查询学过「张三」老师授课的同学的信息 SELECT s.*, c.cname, t.tname, sc.score FROM t_mysql_teacher t, t_mysql_course c, t_mysql_student s, t_mysql_score sc WHERE t.tid c.tid AND c.cid sc.cid AND sc.sid s.sid …

07- OpenCV:模糊图像

目录 一、模糊原理 二、模糊的相关处理方法: 1、均值滤波(归一化盒子滤波) 2、高斯滤波(正态分布的形状) 3、中值模糊 4、双边模糊算法(美容软件) 5、相关代码: 6、几种模糊算法的比…

【问题记录】数据处理部分正常部分异常

一,问题现象 正常处理效果为压缩到-12db,一部分压缩效果正确,一部分数据处理效果不正确。准确来说,只有1/4的数据处理正确。 二,问题原因 传入process的size不正确,导致读出来4096个字节,但…

SQLyog软件安装(保姆级别)

SQLyog 安装配置使用 首先下载SQLyog 软件,并解压 选择自己操作系统的版本 双击点击 .exe 文件,进行安装 选择安装语言,默认中文,直接点击【OK】即可 点击【下一步】 先【勾选】同意协议,再点击【下一步】 …

Windows项目部署

目录 一.安装jdk 1.1 安装 1.2 配置 二.安装Tomcat 2.1 安装 2.2 配置防火墙 三. 安装MySQL 3.1 安装 2.2 内部连接 3.3 外部连接 四. 部署项目 4.1 项目部署 4.2 修改mysql的用户密码 一.安装jdk 1.1 安装 选择jdk安装包双击进行傻瓜式安装即可,这里注意记住安…

Gogs - 管理协作者

Gogs - 管理协作者 References 仓库设置 管理协作者 权限设置 References [1] Yongqiang Cheng, https://yongqiang.blog.csdn.net/

【目标检测】Anchor-based模型:基于K-means算法获取自制数据集的Anchor(yolo源码)

在Anchor-based目标检测模型中,根据数据集选择合适的Anchor有利于加快模型的收敛速度以及减少模型的边框预测误差。本篇文章首先介绍Anchor在目标检测模型中的作用;然后介绍K-means聚类算法;最后介绍yolo源码中自制数据集的Anchor的获取方法。…

企业如何做到安全又极速的分发传输大文件

在当代企业运营中,文件的传输和分发是至关重要的任务。然而,随着文件体积的增大和信息敏感性的凸显,企业需要找到一种既安全又能够高效传输大文件的方法。本文将深入探讨如何在企业环境中实现安全又高效的大文件传输。 一、分发大文件时需要注…

.NET core 中的Kestrel 服务器

什么是Kestrel? Kestrel 是一个跨平台的Web服务器,会默认在ASP.NET Core 项目模板中对其进行配置。未使用 IIS 托管时,ASP.NET Core 项目模板默认使用 Kestrel。 Kestrel 的功能包括: 跨平台:Kestrel 是可在 Window…

spring boot mybatis-plus dynamic-datasource 配置文件 相关依赖环境配置

spring boot mybatis-plus dynamic-datasource 配置文件 相关依赖环境配置 ##yaml配置 server:port: 8866servlet:context-path: /yymtomcat:max-threads: 300connection-timeout: 57000max-connections: 500connection-timeout: 57000 spring:datasource:dynamic:primary: m…

【纯CSS特效源码】(一)几款漂亮的文字特效

1.渐变文字 使用background: -webkit-linear-gradient(#d8ecec, #2d888b);定义背景渐变色 并使用-webkit-text-fill-color: transparent;指定了文本字符的填充颜色 <!DOCTYPE html> <html><style>body {background-color: #111;}#content {position: abso…