【MySQL】基本操作 —— DDL

目錄

  • DDL
  • DDL 常用操作
    • 對數據庫的常用操作
      • 查看所有數據庫
      • 創建數據庫
      • 切換、顯示當前數據庫
      • 刪除數據庫
      • 修改數據庫編碼
    • 對表的常用操作
      • 創建表
      • 數據類型
        • 數值類型
        • 日期和時間類型
        • 字符串類型
      • 查看當前數據庫所有表
      • 查看指定表的創建語句
      • 查看指定表結構
      • 刪除表
    • 對表結構的常用操作
      • 給表添加字段(列)
      • 修改字段名和類型
      • 修改數據類型
      • 修改表名
      • 刪除字段
      • 刪除記錄

DDL

DDL(Data Definition Language),數據定義語言,包括以下內容:

  • 對數據庫的常用操作
  • 對表結構的常用操作
  • 修改表結構

DDL 常用操作

對數據庫的常用操作

查看所有數據庫

語法格式:

show databases;

代碼示例:

-- 查看所有數據庫
show databases ;

結果如下:
在這里插入圖片描述

創建數據庫

語法格式:

creat database [if not exists] mydb [charset = utf8];

  • [if not exists] 可寫可不寫。寫了的話,如果該數據庫已存在也不會報錯,沒寫的話則會報錯
  • [charset = utf8] 設置數據庫使用的字符集,也是可寫可不寫

代碼示例:

-- 創建數據庫 mydb
create database if not exists mydb charset=utf8 ;
-- 查看所有數據庫
show databases ;

結果如下:
在這里插入圖片描述

切換、顯示當前數據庫

語法格式:

use mydb; 切換數據庫

select database(); 顯示當前使用的數據庫

代碼示例:

-- 切換到 mydb 數據庫
use mydb;
-- 查看當前使用的數據庫
select database();

結果如下:
在這里插入圖片描述

刪除數據庫

語法格式:

drop database [if exists] mydb;

  • [if exists] 可寫可不寫。寫了的話,如果該數據庫不存在也不會報錯,沒寫的話則會報錯

代碼示例:

-- 刪除數據庫 mydb
drop database if exists mydb;
-- 查看所有數據庫
show databases ;

結果如下:
在這里插入圖片描述

修改數據庫編碼

語法格式:

alter database mydb character set utf8;

代碼示例:

-- 將數據庫編碼改為 GBK 字符集
alter database mydb character set gbk;

對表的常用操作

創建表

語法格式:

create table [if not exists] mytable (字段名1 類型[(寬度)] [約束條件] [comment '字段說明'],字段名2 類型[(寬度)] [約束條件] [comment '字段說明'],字段名3 類型[(寬度)] [約束條件] [comment '字段說明'],
)[表的一些設置];

注意事項:創建表是構建一張空表,指定這個表的名字,這個表有幾列,每一列叫什么名字,以及每一列存儲的數據類型

代碼示例:

-- 創建表
create table if not exists student(id int,name varchar(10),gender char(1),age int,birth date,address varchar(20)
);

結果如下:
在這里插入圖片描述

數據類型

數據類型是指在創建表的時候為表中字段指定數據類型,只有數據符合類型要求才能存儲起來,使用數據類型的原則是:夠用就行,盡量使用取值范圍小的,而不用大的,這樣可以更多的節省存儲空間

數值類型
類型大小有符號 (SIGNED) 范圍無符號 (UNSIGNED) 范圍描述
TINYINT1 byte(-128,127)(0,255)小整數值
SMALLINT2 bytes(-32768,32767)(0,65535)大整數值
MEDIUMINT3 bytes(-8388608,8388607)(0,16777215)大整數值
INT 或 INTEGER4 bytes(-2147483648,2147483647)(0,4294967295)大整數值
BIGINT8 bytes(-263,263-1)(0,2^64-1)極大整數值
FLOAT4 bytes(-3.402823466 E+38,3.402823466351 E+38)0 和 (1.175494351 E-38,3.402823466 E+38)單精度浮點數值
DOUBLE8 bytes(-1.7976931348623157 E+308,1.7976931348623157 E+308)0 和 (2.2250738585072014 E-308,1.7976931348623157 E+308)雙精度浮點數值
DECIMAL-依賴于 M (精度) 和 D (標度) 的值依賴于 M (精度) 和 D (標度) 的值小數值(精確定點數)
日期和時間類型
類型大小范圍格式描述
DATE31000-01-01 至 9999-12-31YYYY-MM-DD日期值
TIME3-838:59:59 至 838:59:59HH:MM:SS時間值或持續時間
YEAR11901 至 2155YYYY年份值
DATETIME81000-01-01 00:00:00 至 9999-12-31 23:59:59YYYY-MM-DD HH:MM:SS混合日期和時間值
TIMESTAMP41970-01-01 00:00:01 至 2038-01-19 03:14:07YYYY-MM-DD HH:MM:SS混合日期和時間值,時間戳
字符串類型
類型大小描述
CHAR0-255 bytes定長字符串
VARCHAR0-65535 bytes變長字符串
TINYBLOB0-255 bytes不超過 255 個字符的二進制數據
TINYTEXT0-255 bytes短文本字符串
BLOB0-65 535 bytes二進制形式的長文本數據
TEXT0-65 535 bytes長文本數據
MEDIUMBLOB0-16 777 215 bytes二進制形式的中等長度文本數據
MEDIUMTEXT0-16 777 215 bytes中等長度文本數據
LONGBLOB0-4 294 967 295 bytes二進制形式的極大文本數據
LONGTEXT0-4 294 967 295 bytes極大文本數據

查看當前數據庫所有表

語法格式:

show tables;

代碼示例:

-- 切換到 mydb 數據庫
use mydb;
-- 查看當前數據庫的所有表
show tables;

結果如下:
在這里插入圖片描述

查看指定表的創建語句

語法格式:

show create table 表名;

代碼示例:

-- 查看student表的創建語句
show create table student;

結果如下:
在這里插入圖片描述

查看指定表結構

語法格式:

desc 表名;

代碼示例:

-- 查看student表結構
desc student;

結果如下:
在這里插入圖片描述

刪除表

語法格式:

drop table 表名;

代碼示例:

-- 刪除student表
drop table student;
-- 查看當前數據庫的所有表
show tables;

結果如下:
在這里插入圖片描述

對表結構的常用操作

給表添加字段(列)

語法格式:

alter table 表名 add 字段名 類型(長度) [約束];

代碼示例:

create table if not exists student(id int,name varchar(10),gender char(1),age int,birth date,address varchar(20)
);
-- 為student表添加班級class列
alter table student add class varchar(10);
-- 查看student表結構
desc student;

結果如下:
在這里插入圖片描述

修改字段名和類型

語法格式:

alter table 表名 change 舊字段名 新字段名 類型(長度) [約束];

代碼示例:

-- 將班級class列改為專業major列,類型改為varchar(10)
alter table student change class major varchar(20);
-- 查看student表結構
desc student;

結果如下:
在這里插入圖片描述

修改數據類型

語法格式:

alter table 表名 modify 字段名 新數據類型(長度);

代碼示例:

-- 將學號id改為varchar類型
alter table student modify id varchar(10);
-- 查看student表結構
desc student;

結果如下:
在這里插入圖片描述

修改表名

語法格式:

alter table 表名 rename to 新表名;

代碼示例:

-- 將學生表student改為員工表employee
alter table student rename to employee;
-- 查看employee表結構
desc employee;

結果如下:
在這里插入圖片描述

刪除字段

語法格式:
alter table 表名 drop 字段名;

代碼示例:

-- 刪除員工表employee中的專業major列
alter table employee drop major;
-- 查看employee表結構
desc employee;

結果如下:
在這里插入圖片描述

刪除記錄

語法格式:

truncate table 表名;

在這里插入圖片描述

將該表中的記錄刪除,代碼示例:

-- 刪除學生表student中的記錄
truncate table student;

結果如下:
在這里插入圖片描述


下一篇為【MySQL】基本操作 —— DML

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/897752.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/897752.shtml
英文地址,請注明出處:http://en.pswp.cn/news/897752.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

工廠模式加策略模式 -- 具體實現

這里寫目錄標題 定義接口定義抽象類定義主處理器分支處理器定義工廠demo 定義接口 public interface EntityHandler extends InitializingBean {MatchContentDTO match(MatchEntityDTO matchEntityDTO);String supportEntityType(); }定義抽象類 public abstract class Abstr…

基于Spring Boot的網上寵物店系統的設計與實現(LW+源碼+講解)

專注于大學生項目實戰開發,講解,畢業答疑輔導,歡迎高校老師/同行前輩交流合作?。 技術范圍:SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬蟲、數據可視化、安卓app、大數據、物聯網、機器學習等設計與開發。 主要內容:…

PHPCMS V9 登錄加密改造

要改造 phpcms 的后臺登錄,使其前端使用加密方式提交,后端解密,你可以采用 RSA 非對稱加密 或 AES 對稱加密 方式來增強安全性。 方案設計 前端加密 生成公私鑰對(推薦使用 RSA)。前端使用公鑰加密密碼,然…

LeetCode 滑動數組統計+至少 2962. 統計最大元素出現至少 K 次的子數組

2962. 統計最大元素出現至少 K 次的子數組 給你一個整數數組 nums 和一個 正整數 k 。 請你統計有多少滿足 「 nums 中的 最大 元素」至少出現 k 次的子數組,并返回滿足這一條件的子數組的數目。 子數組是數組中的一個連續元素序列。 示例 1: 輸入&#…

FANUC機器人幾種常用的通訊網絡及接口

FANUC機器人幾種常用的通訊網絡及接口 Devicenet 網絡通訊接口,接口為5針線 (規定用的機架為 81-84) PROFIBUS 網絡通訊接口,針腳為2針(規定用的機架為 67) Intemet 網絡通訊接口(常用的網線接口&#xf…

CentOS8+Zabbix7.2.4解決中文顯示問題

#cd /usr/share/zabbix/ui/include/ #grep graphfont defines.inc.php define(‘ZBX_GRAPH_FONT_NAME’, ‘graphfont’); // font file name define(‘ZBX_FONT_NAME’, ‘graphfont’); #ll /usr/share/zabbix/ui/assets/fonts/graphfont.ttf lrwxrwxrwx. 1 root root 36 3…

AI自動化編程初探

先說vscodeclinemodelscope方案,后面體驗trae或者cursor再寫寫其它的。vscode和trae方案目前來說是免費的,cursor要用claud需要付費,而且不便宜,當然效果可能是最好的。 vscode方案,我的經驗是最好在ubuntu上&#xff…

101.在 Vue 3 + OpenLayers 使用 declutter 避免文字標簽重疊

1. 前言 在使用 OpenLayers 進行地圖開發時,我們經常需要在地圖上添加點、線、區域等圖形,并給它們附加文字標簽。但當地圖上的標注較多時,文字標簽可能會發生重疊,導致用戶無法清晰地查看地圖信息。 幸運的是,OpenL…

18天 - 常見的 HTTP 狀態碼有哪些?HTTP 請求包含哪些內容,請求頭和請求體有哪些類型?HTTP 中 GET 和 POST 的區別是什么?

常見的 HTTP 狀態碼有哪些? HTTP 狀態碼用于指示服務器對客戶端請求的響應結果,常見的 HTTP 狀態碼可以分為以下幾類: 1. 信息類(1xx) 100 Continue:客戶端應繼續發送請求。101 Switching Protocols&…

IXTUR氣控永磁鐵:以高精度氣控和穩定磁場,為機器人應用提供穩定抓取力

在現代工業生產和物流領域,物料的抓取與搬運是影響生產效率和成本控制的重要環節。傳統夾爪在面對不同材質、形狀和重量的物體時,常常存在適應性差、抓取不穩定、操作復雜等問題,導致生產流程中頻繁出現停機調整,增加了人工干預成…

江科大51單片機筆記【16】AD/DA轉換(下)

寫在前言 此為博主自學江科大51單片機(B站)的筆記,方便后續重溫知識 在后面的章節中,為了防止篇幅過長和易于查找,我把一個小節分成兩部分來發,上章節主要是關于本節課的硬件介紹、電路圖、原理圖等理論知識…

【C++】 —— 筆試刷題day_4

刷題day_4 繼續加油!!! 一、Fibonacci數列 題目鏈接:Fibonacci數列 題目解析 題目要求,輸入一個數N,我們可以對N進行1/-1操作;題目讓我們輸出對N進行至少多少步可以變成Fibonacci數。 這里題目…

IP層之分片包的整合處理---BUG修復

在之前章節中,筆者就IP層之分片包的整合處理進行了概念介紹,以及代碼編寫和仿真,在整體代碼調試環節,筆者發現了一個問題,在本文中,筆者將就這個BUG進行說明,以及進行修復,講解代碼實…

修復Electron項目Insecure Content-Security-Policy(內容安全策略CSP)警告的問題

將以下代碼粘貼進html的<header>標簽內 <metahttp-equiv"Content-Security-Policy"content"default-src self; style-src self unsafe-inline; img-src self data:; "> 解釋一下上面代碼中的屬性含義 default-src self&#xff1a;配置加載策…

linux 的免密切換用戶PAM配置

/etc/pam.d/su是Linux系統中與用戶切換&#xff08;su命令&#xff09;相關的PAM&#xff08;Pluggable Authentication Modules&#xff0c;可插拔認證模塊&#xff09;配置文件。以下是對它的詳細介紹&#xff1a; 簡介 作用 PAM是一種用于管理系統認證的機制&#xff0c;…

pyspark 數據處理的三種方式RDD、DataFrame、Spark SQL案例

目錄 一、淺語二、三種數據處理方式比較2.1 RDD2.2 DataFrame2.3 Spark SQL 三、三種方法的創建方式3.1 創建RDD3.2 創建DataFrame3.2.1 創建sqlContext3.2.2 定義Schema3.2.3 創建DataFrame 3.3 創建SparkSQL3.3.1 登錄臨時表3.3.2 使用sparkSQL 四、三種方法顯示部分字段4.1 …

文件解析漏洞靶機---- 練習通關攻略

1.安裝靶機 點擊 hackme.ova 文件&#xff0c;直接導入虛擬機&#xff0c;選擇存儲位置 2. 開啟靶機 3. kali掃描同C段的ip&#xff0c;找到靶機ip nmap 192.168.182.1/24 經判斷&#xff0c;靶機ip為&#xff1a;192.168.182.157 開啟端口 http 80 、ssh 遠程連接 22 4…

信號處理抽取多項濾波的數學推導與仿真

昨天的《信號處理之插值、抽取與多項濾波》&#xff0c;已經介紹了插值抽取的多項濾率&#xff0c;今天詳細介紹多項濾波的數學推導&#xff0c;并附上實戰仿真代碼。 一、數學變換推導 1. 多相分解的核心思想 將FIR濾波器的系數 h ( n ) h(n) h(n)按相位分組&#xff0c;每…

【大模型基礎_毛玉仁】2.3 基于 Encoder-only 架構的大語言模型

更多內容&#xff1a;XiaoJ的知識星球 目錄 2.3 基于Encoder-only 架構的大語言模型2.3.1 Encoder-only 架構2.3.2 BERT 語言模型1&#xff09;BERT 模型結構2&#xff09;BERT 預訓練方式3&#xff09;BERT 下游任務 2.3.3 BERT 衍生語言模型1&#xff09;RoBERTa 語言模型2&a…

AIP-165 按條件刪除

編號165原文鏈接https://google.aip.dev/165狀態批準創建日期2019-12-18更新日期2019-12-18 有時API需要提供一種機制&#xff0c;按照一些過濾參數刪除大量資源&#xff0c;而非提供待刪除的各資源名字。 這是一個稀有的場景&#xff0c;用于用戶一次性刪除數千或更多資源的…