MySQL----MySQL資料庫入門----第二章 資料庫和表的基本操作

来源:https://www.cnblogs.com/WangYujie1994/archive/2019/02/20/10404833.html
-Advertisement-
Play Games

2.1 資料庫和資料庫表的創建 ①資料庫的創建(在資料庫系統中劃分一塊存儲數據的空間): ②資料庫表的創建 註意: 資料庫 (1)在①中,[ charset 字元集 ] 是可選的,用於設定資料庫的預設字元集,即資料庫存儲使用的字元集。當不聲明時,預設繼承伺服器的字元集 utf-8。 (2)關於字元集 ...


2.1 資料庫和資料庫表的創建

  ①資料庫的創建(在資料庫系統中劃分一塊存儲數據的空間):  

create database 資料庫名稱 [charset 字元集]

  ②資料庫表的創建

use 資料庫名
create table 資料庫表名(
     欄位1    數據類型    [屬性],
     欄位2    數據類型    [屬性],
     欄位3    數據類型    [屬性],
     ...
     欄位n    數據類型    [屬性]
);

註意:

  資料庫

  (1)在①中,[ charset 字元集 ] 是可選的,用於設定資料庫的預設字元集,即資料庫存儲使用的字元集。當不聲明時,預設繼承伺服器的字元集 utf-8

  (2)關於字元集,常見的字元集:ASCII(英文字母,數字)GBK(國標擴展中文簡體字元集,big5,繁體中文),UTF8。在開發時候,要註意三碼合一,即資料庫、PHP腳本、瀏覽器三者各自使用的字元集應該統一,建議顯示為UTF8)。

  (3)已經存在的資料庫,無法再次創建。

  (4)資料庫命名以字母、數字、下劃線組成,長度不超過32個字元

  資料庫表

  (1)在創建資料庫表之前,應該使用“use 資料庫名”指定操作在哪個資料庫中進行,否則會拋出“No database selected”錯誤。

 

2.2 資料庫和資料庫表的查看

  ①資料庫的查看

  查看全部資料庫:

show databases;

  查看某個創建的資料庫:

show create database 資料庫名字;

  ②資料庫表的查看

  查看當前資料庫中全部資料庫表:

show tables;

  查看某個具體資料庫表方法1:

show create table 資料庫表名;

  查看某個具體資料庫表方法2:

desc 資料庫表名;

註意:

  資料庫

  (1)系統資料庫(information_schema,performance_schema,mysql)不能刪除。

  (2)查看某個具體的資料庫信息時,顯示的信息包括資料庫的創建語句及資料庫選項(字元集)。

  資料庫表

  (1)查看前,需要首先指定要查看的數據表所在的資料庫。否則:no database selected。

  (2)未選擇資料庫,可以通過from指定資料庫名稱。 show tables from 資料庫名; 

  (3)查看某個具體資料庫表方法1,可以顯示數據表的結構、定義語句及字元集編碼,若想顯示結果更加美觀,可以使用 show create table 資料庫表名\G 

   (4)查看某個具體資料庫表方法2,查看表的欄位信息,其中包括欄位名、欄位類型等信息。

 

2.3 修改資料庫和資料庫表

  ①資料庫的修改 

alter database 資料庫名 charset 新字元集;

  ②資料庫表的修改

  1、修改資料庫表名

 

alter table 表名 rename [to] 新表名;

 

  2、修改資料庫表的欄位名

alter table 表名 change  舊欄位名   新欄位名   新欄位的欄位類型;

  3、修改資料庫表的欄位數據類型

alter table 表名 modify  欄位名字   新的數據類型;

  4、添加欄位

alter table 表名 add   欄位名    欄位類型 [約束條件] [first|after 已存在的欄位];

  5、刪除欄位

alter table 表名 drop 欄位名;

  6、調整欄位位置

alter table 表名 modify  欄位名1  數據類型  first|after 欄位名2;

註意:

  資料庫

  (1)資料庫的修改指的是修改資料庫的字元集,資料庫名稱不能修改。

  資料庫表

  (1)在修改資料庫表的欄位名中,新的欄位名稱後面的數據類型必須添加,哪怕新的名稱的數據類型與之前的欄位的數據類型相同,也必須添加。

 

 

2.4 刪除資料庫和資料庫表

  ①資料庫的刪除

drop database 資料庫名稱;

  ②資料庫表的刪除

drop table 資料庫表名稱;

 

2.5 欄位類型初步介紹

   ①整型

  1、tinyint                    -128~127

  2、smallint       -3萬~3萬

  3、int       -800萬~800萬

  4、mediumint    -21億~21億

  5、bigint     太大了,不會計算了

  ②小數

  1、float      float存儲小數類型存在精度的問題

  2、double

  3、decimal(M,D)     對應精度要求比較高的,使用decimal類型,實現小數的精確存儲。其原理為可以存儲每位數字。一般用來存儲與錢有關的數字。

  註意:decimal類型的有效範圍由M和D決定,其中M表示的數據的長度,D表示的小數點後的長度。例如將數據類型為decimal(6,2)的數據3.1415插入資料庫後,顯示的結果是3.14.

  ③字元串類型

  1、char(M)      char存儲長度比較固定的字元串,如手機號,身份證號,序列號,郵編,速度快

  2、varchar(M)    varchar一般用來存儲長度變化比較大的字元串,如文章標題,商品名稱,速度慢

  註意:

  M為該欄位可以存儲的最多字元數,如varchar(10)。M參數不可以省略,此外不能超出指定的長度。

  可以使用text類型,存儲較長的字元串,無需指定字元串的具體長度。

  ④日期類型

  1、year      YYYY          '1999'/1999 (支持數字或者字元串插入)

  2、date  YYYY-MM-DD      支持‘YYYY-MM-DD’或者‘YYYYMMDD’字元串格式插入

  3、time  HH:MM:SS       支持“HHMMSS”字元串/HHMMSS數字格式插入

  4、datetime   YYYY-MM-DD HH:MM:SS    支持“YYYY-MM-DD HH:MM:SS”/“YYYYMMDDHHMMSS”字元串或者YYYYMMDDHHMMSS數字格式插入

  

2.6 表的屬性(約束)

  ①primary key 主鍵約束,唯一標識對應記錄。主鍵欄位的值不能重覆,不能為空

  ②foreign key 外鍵約束。

  ③null / not null   非空約束。

  ④default     設置欄位的預設值,在沒有錄入時自動使用預設值填充。

  ⑤unique   唯一鍵,設置欄位的值為唯一的,可以同時設置多個欄位為唯一鍵。唯一鍵欄位的值可以為空。

  ⑥auto_increment       設置欄位為自動增長,預設從1開始自動分配編號。類型必須為整型。自增長欄位必須為一個key。

  ⑦comment          欄位註釋


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

-Advertisement-
Play Games
更多相關文章
  • -- Oracle資料庫日期|時間查詢 SELECT SYSDATE FROM DUAL; SELECT TO_CHAR(SYSDATE , 'YYYY') FROM DUAL; -- 年 SELECT TO_CHAR(SYSDATE , 'MM') FROM DUAL; -- 月 SELECT T ...
  • 3.1 添加數據 ①為所有欄位添加數據 方法1:欄位包含全部定義的欄位 方法2:值必須與欄位定義順序一致 ②為部分欄位添加數據 欄位僅為定義欄位的部分欄位 ③同時添加多條記錄 註意: ①插入數據時,欄位列表與數據列表要一一對應。 ②插入數據的類型,需要與欄位設置的類型一致。數據應該不超出欄位的表示範 ...
  • 以下List是我們常見的MySQL參數配置,這個參數對提高實例的性能大有裨益。 其中 建議設置值,僅供參考,需要根據自己的業務場景和硬體資源仔細推敲。 重用保存在緩存中線程的數量:如果Threads_created值過大MySQL伺服器一直在創建線程,比較耗資源,可以適當增加配置文件中thread_ ...
  • 作用: 四捨五入 SELECT CAST('9.0' AS DECIMAL) FROM DUAL; -- 9 SELECT CAST('9.5' AS DECIMAL) FROM DUAL; -- 10 SELECT CAST('9.6' AS DECIMAL) FROM DUAL; -- 10 S ...
  • 啟動 查看redis.conf文件,可以通過general中的說明,配置通過systemd來啟停redis和查看redis狀態(作者沒有採用,而是使用service管理,service配置參考《02. Instal redis on Linux》) 這裡直接說通過service啟動命令: servi ...
  • redis-3.2.6配置文件 主要修改配置文件幾個大方面: 埠 port 安全: bind ip 綁定監聽IP 安全模式開啟與否 protected-mode 一般設置yes 訪問密碼 requirepass 如果設置了bind 127.0.0.1 本地訪問,那麼可以不設置密碼,如果是提供bin ...
  • 安裝下載redis,參考官方文檔:https://redis.io/download 下載: shell>wget http://download.redis.io/releases/redis-3.2.6.tar.gz # 這裡版本讀者應該已官方最新stable版本為準 Notice:我使用的安裝 ...
  • 一、安裝redis 第一步:下載redis安裝包 wget http://download.redis.io/releases/redis-4.0.6.tar.gz 第二步:解壓壓縮包 tar -zxvf redis-4.0.6.tar.gz 第三步:yum安裝gcc依賴 yum install g ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...