數據表的定義DDL與數據的操作DML

来源:https://www.cnblogs.com/yrxc/archive/2020/05/23/12936128.html
-Advertisement-
Play Games

DDL:用來定義RDB模式、外模式和內模式,已實現對基本表、視圖以及索引文件的定義、修改和刪除 創建數據表->創建表結構->創建表數據 數據類型 創建表 create table 表名( 欄位名 數據類型 [長度] [列級完整性約束][表級完整性約束]--多個主鍵:primary key (欄位名, ...


DDL:用來定義RDB模式、外模式和內模式,已實現對基本表、視圖以及索引文件的定義、修改和刪除

 

 

 

 創建數據表->創建表結構->創建表數據

 

 

數據類型

 

 

 

 

 

 

 

 

 

 

 

 

 

創建表

 

create table   表名(
欄位名 數據類型  [長度] [列級完整性約束][表級完整性約束]

--多個主鍵:
primary key (欄位名,欄位名)
--外鍵:
foreign key (外鍵名) references 被參照表名(主鍵)
[on updata cascade|no action|set null] --更新時預設為no action

[on delete cascade|no action|set null] --刪除時預設為no action

)

 

數據完整性:資料庫中的數據的正確性、有效性和相容性

 

 

 

 

 

 實體完整性即主鍵

主鍵(primary key):主鍵約束指能夠唯一標識秒鐘每一行的一個列或多個列

    • 每個表最多只能定義一個主鍵約束
    • 主鍵約束所在列不允許出現重覆值
    • 主鍵約束所在列不允許出現空值
    • 主鍵約束在指定的列上創建唯一索引,預設下該索引是聚集索引

參照完整性即外鍵

外鍵:外鍵欄位的值只能取(參照)另一個表主鍵欄位的值,用來維護兩個基本表之間的一致性關係

default:設置預設值,再不寫數據時,也預設值填充

check(約束條件)

 

 

修改表結構

alter table  [資料庫名.] <表名>

alter colume <列名><數據類型>[列級完整性約束]   --colume標識後面是一個欄位

add  <列名><數據類型>[列級完整性約束]

add <列名> as 表達式 --計算列,可以自動更新 drop colume <列名>

修改預設值default
alter
table a add default1for number
constraint <名> 給後面的約束取個名字,如果不加的話,系統會自動分配一個名稱
alter
table a add constraint df default1for number
在刪除約束是使用
alter table a drop df 即可

 

--增加唯一約束
alter table a add unique(欄位名)

alter table a add constraint <約束名> unique(欄位名)

--增加自定義約束

alter table a add check(表達式)

--刪除約束
alter table a drop [constraint] 約束名

--刪除表
drop table <表名>

 

記錄的增刪改(insert,delete,update)

 1 --插入
 2 
 3 insert into <表名> [(欄位名)] values (數據)
 4 
 5 --刪除
 6 
 7 delete from <表名> [where 表達式] --預設刪除整張表所有記錄
 8 
 9 --ps:   <欄位名> is null  某欄位記錄為空值的記錄
10 
11 --修改  預設修改整張表
12 update <表名> set 欄位1=XX,欄位二=xx [where 表達式]

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • Device Tree Overlays、 dtbo、設備樹堆疊功能 ...
  • 前期準備 執行yum update openssh先升級下. 反正官方提供的這種升級是沒問題的。如果之前手動編譯操作過openssh的升級,變更了預設配置文件路徑什麼的請自行測試。) (這裡準備統一openssh版本為7.4p1之後再統一編譯安裝升級到openssh8.2p1) [root@node ...
  • pwd命令 功能說明:顯示當前用戶所在的工作目錄 用法:pwd [OPTION]... 當我們登錄操作系統時,我們就會處在某個目錄中,windows為桌面,在Linux操作系統中,如果我們以root用戶登錄,我們會處在root用戶的家目錄,如果以普通用戶登錄,我們會處在普通用戶的家目錄。 | 選項 ...
  • HBase為每個Region維護一個狀態,並將該狀態保留在hbase:meta中。hbase:meta 本身的Region狀態保留在ZooKeeper中。可以在Master Web UI中查看Region的過渡狀態。以下是可能的Region狀態列表。 1. 狀態機中包括下麵幾種狀態: offline ...
  • 本文來源於公眾號:胖滾豬學編程。轉載請註明出處! 一個風度翩翩,穿著格子襯衣的中年男子,拿著一個滿是劃痕的mac向她走來,看著錚亮的頭,胖滾豬心想,這肯定是尼瑪頂級架構師吧!完了要掛了。 結果面試官第一個問題,就讓胖滾豬內心暗喜 面試官 :消息隊列這東西,你還熟悉吧?消息隊列在企業中的應用場景有哪些 ...
  • 上一篇 我們模擬了單機器下哨兵模式的搭建,那麼接下來我們看下哨兵模式的實現與工作。 為什麼又分成兩篇呢?因為篇幅太長(偷懶),再一個這篇主要說的是Sentinel的初始化以及信息交換,下一篇著重說下狀態檢查、Sentinel頭領選舉與故障轉移 。 啟動並初始化Sentinel 當一個Sentinel ...
  • 前言: 本文主要講述瞭如何使用Docker快速上手HBase,省去繁雜的安裝部署環境,直接上手,小白必備。適合HBase入門學習及簡單代碼測試。 1. Docker 安裝 參考地址: 支持常用的操作系統:Centos / ubuntu / Windows / macos 等。 2. 拉取鏡像 鏡像地 ...
  • 下麵的testa表沒有數據,dept表有數據。直接select,有數據就會有結果集。 plsql的exists用於判斷子查詢是否有結果集返回,“exists (子查詢)”子查詢只要結果集有數據,則exists判斷為true,否則為false,不管結果集數據是什麼,是1啊是2啊或者很多列,只要結果集不 ...
一周排行
    -Advertisement-
    Play Games
  • GoF之工廠模式 @目錄GoF之工廠模式每博一文案1. 簡單說明“23種設計模式”1.2 介紹工廠模式的三種形態1.3 簡單工廠模式(靜態工廠模式)1.3.1 簡單工廠模式的優缺點:1.4 工廠方法模式1.4.1 工廠方法模式的優缺點:1.5 抽象工廠模式1.6 抽象工廠模式的優缺點:2. 總結:3 ...
  • 新改進提供的Taurus Rpc 功能,可以簡化微服務間的調用,同時可以不用再手動輸出模塊名稱,或調用路徑,包括負載均衡,這一切,由框架實現並提供了。新的Taurus Rpc 功能,將使得服務間的調用,更加輕鬆、簡約、高效。 ...
  • 本章將和大家分享ES的數據同步方案和ES集群相關知識。廢話不多說,下麵我們直接進入主題。 一、ES數據同步 1、數據同步問題 Elasticsearch中的酒店數據來自於mysql資料庫,因此mysql數據發生改變時,Elasticsearch也必須跟著改變,這個就是Elasticsearch與my ...
  • 引言 在我們之前的文章中介紹過使用Bogus生成模擬測試數據,今天來講解一下功能更加強大自動生成測試數據的工具的庫"AutoFixture"。 什麼是AutoFixture? AutoFixture 是一個針對 .NET 的開源庫,旨在最大程度地減少單元測試中的“安排(Arrange)”階段,以提高 ...
  • 經過前面幾個部分學習,相信學過的同學已經能夠掌握 .NET Emit 這種中間語言,並能使得它來編寫一些應用,以提高程式的性能。隨著 IL 指令篇的結束,本系列也已經接近尾聲,在這接近結束的最後,會提供幾個可供直接使用的示例,以供大伙分析或使用在項目中。 ...
  • 當從不同來源導入Excel數據時,可能存在重覆的記錄。為了確保數據的準確性,通常需要刪除這些重覆的行。手動查找並刪除可能會非常耗費時間,而通過編程腳本則可以實現在短時間內處理大量數據。本文將提供一個使用C# 快速查找並刪除Excel重覆項的免費解決方案。 以下是實現步驟: 1. 首先安裝免費.NET ...
  • C++ 異常處理 C++ 異常處理機制允許程式在運行時處理錯誤或意外情況。它提供了捕獲和處理錯誤的一種結構化方式,使程式更加健壯和可靠。 異常處理的基本概念: 異常: 程式在運行時發生的錯誤或意外情況。 拋出異常: 使用 throw 關鍵字將異常傳遞給調用堆棧。 捕獲異常: 使用 try-catch ...
  • 優秀且經驗豐富的Java開發人員的特征之一是對API的廣泛瞭解,包括JDK和第三方庫。 我花了很多時間來學習API,尤其是在閱讀了Effective Java 3rd Edition之後 ,Joshua Bloch建議在Java 3rd Edition中使用現有的API進行開發,而不是為常見的東西編 ...
  • 框架 · 使用laravel框架,原因:tp的框架路由和orm沒有laravel好用 · 使用強制路由,方便介面多時,分多版本,分文件夾等操作 介面 · 介面開發註意欄位類型,欄位是int,查詢成功失敗都要返回int(對接java等強類型語言方便) · 查詢介面用GET、其他用POST 代碼 · 所 ...
  • 正文 下午找企業的人去鎮上做貸後。 車上聽同事跟那個司機對罵,火星子都快出來了。司機跟那同事更熟一些,連我在內一共就三個人,同事那一手指桑罵槐給我都聽愣了。司機也是老社會人了,馬上聽出來了,為那個無辜的企業經辦人辯護,實際上是為自己辯護。 “這個事情你不能怪企業。”“但他們總不能讓銀行的人全權負責, ...