MySql資料庫基礎操作——資料庫、使用者的建立,表的製作、修改等

來源:互聯網
上載者:User

標籤:公司   evo   rem   round   nav   修改表   外鍵   signed   顯示   

  MySql 是一款使用便捷、輕量級的資料庫。因為他體積小、速度快、安裝使用簡單、開源等優點,目前是使用最廣泛的資料庫。目前位於Oracle甲骨文公司旗下。那今天我們就來介紹一下資料庫的基本操作。具體介紹通過指令的方式來操作資料庫。

  首先,串連資料庫的軟體很多,比如說 Navicat 等軟體。通過這些軟體可以輕鬆便捷的操作資料庫,但是今天的重點不在這。

  我們今天普及一下指令操作的方式操作MySql資料庫。

我們主要從以下 4 個方面介紹:

  1.資料庫的 建立、刪除、查詢 等語句    跳轉

  2.使用者的 建立、刪除、配置許可權等語句    跳轉

  3.表的 建立、刪除、查詢    跳轉

  4.表的欄位的 刪除、修改等操作    跳轉

  5.修改約束條件    跳轉

  那接下來就開始具體的介紹。

 

1.資料庫的 建立、刪除、查詢 等語句

CREATE DATABASE IF NOT EXISTS myDB CHARACTER SET ‘UTF8‘;

  上述語句是 判斷如果 myDB 資料庫不存在就建立他,並設定其為 UTF8 的字元集編碼。如果已經存在就不會重複建立。

 

DROP DATABASE IF EXISTS mydb;

   若果 mydb 資料庫存在,就刪除資料庫,不存在則不刪除

 

SHOW DATABASES;

  查詢顯示出,本機所有的資料庫

 

USE mybiji;

  開啟使用 mybiji 資料庫,對資料庫的所有操作都必須開啟一個資料庫才行

 

SHOW TABLES  FROM mybiji;

  顯示 mybiji 資料庫的所有資料表

 

 2.使用者的 建立、刪除、配置許可權等語句

CREATE USER ‘fei‘@‘%‘ IDENTIFIED BY ‘fei‘;

  這是建立使用者 fei 。主機名稱可以為空白,為空白預設是 %許可權,表示所有主機均可串連。

 

CREATE USER ‘fei‘@‘localhost‘ IDENTIFIED BY ‘fei‘;

  建立使用者 fei 。 localhost是本地主機才能訪問

 

GRANT ALL ON *.* TO ‘fei‘@‘localhost‘;

  給使用者分 fei 配許可權  *.* 所有資料庫的所有表

 

GRANT SELECT INSERT DELETE ON mysql.`user` TO ‘feige‘@‘localhost‘;

  給使用者添加指定資料庫 mysql 的許可權

 

REVOKE ALL ON *.* FROM ‘fei‘@‘localhost‘;

  刪除使用者的許可權。這裡表示所有許可權。

 

3.表的 建立、刪除、查詢

CREATE TABLE IF NOT EXISTS myTable(    id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT,                -- UNSIGNED 無符號;AUTO_INCREMENT 設定自動成長;PRIMARY KEY設為關鍵字;-- PRIMARY KEY(id),    `name` VARCHAR(255) NOT NULL,    -- 這裡的name是系統關鍵字,所以這裡用 反引號 包起來。正常來說欄位是不加符號的,就像height之類的一樣    age TINYINT UNIQUE,    height DOUBLE(3,2) DEFAULT 1.2        )

  這是建立 資料表 指令。小括弧內都是表的欄位。

 

DROP TABLE IF EXISTS myTable;

  刪除 myTable 資料表

 

SHOW COLUMNS FROM myTable;

  顯示表 myTable 的內容和結構

 

 4.表的欄位的 刪除、修改等操作

-- 修改表的名字. 這是  ALTER TABLE 以前的名 RENAME 想要的名;ALTER TABLE tb3 RENAME tb33;

  修改表的名字.   ALTER TABLE 以前的名 RENAME 想要的名;

 

-- 這是同時修改多個表名,    RENAME TABLE 以前的名 TO 現在的名,想要的名 TO 想要的名;RENAME TABLE tb1 TO tb11,tb2 TO tb22;

  這是同時修改多個表名,    RENAME TABLE 以前的名 TO 現在的名,想要的名 TO 想要的名;

 

-- ALTER TABLE 表名 CHANGE 舊列名 新列名 列定義 後面是可選的;    FIRST 將當前條調整到表格第一列。AFTER是調節到某一列後邊-- 這個欄位在哪無所謂的,主鍵在最後也一樣ALTER TABLE tb33 CHANGE `name` `ueername` VARCHAR(200) NOT NULL AFTER id;

  ALTER TABLE 表名 CHANGE 舊列名 新列名 列定義 後面是可選的;    FIRST 將當前條調整到表格第一列。AFTER是調節到某一列後邊
  

-- 新增一列ALTER TABLE tb33 ADD height DOUBLE(6,2) DEFAULT 1.2;-- 刪除一列ALTER TABLE tb33 DROP height;

  新增一列;刪除一列

 

-- 增加多欄欄位ALTER TABLE tb33 ADD(    weight DOUBLE(6,2) DEFAULT 1.2,    age int DEFAULT 22)

  增加多欄欄位

 

5.修改約束條件

-- 刪除主鍵約束ALTER TABLE tb33 DROP PRIMARY KEY;-- 增加主鍵約束ALTER TABLE tb33 ADD PRIMARY KEY(age);

  增加主鍵約束;增加主鍵約束

 

-- 新增唯一性限制式ALTER TABLE tb33 ADD UNIQUE KEY(id);-- 刪除唯一性限制式》注意刪除唯一性限制式時,會預設建立索引,所以刪除的時候要同時刪除索引。ALTER TABLE tb33 DROP INDEX id;

  新增唯一性限制式;刪除唯一性限制式

 

-- 設定預設值約束ALTER TABLE tb33 ALTER weight SET DEFAULT 20;-- 刪除預設值約束ALTER TABLE tb33 ALTER weight DROP DEFAULT;

  設定預設值約束; 刪除預設值約束

 

-- 設定外鍵約束ALTER TABLE tb33 ADD FOREIGN KEY (clsid) REFERENCES classes(id) ON DELETE SET NULL ON UPDATE CASCADE;-- 刪除外鍵約束ALTER TABLE tb33 DROP FOREIGN KEY tb33_ibfk_1;        -- 運行時有錯誤的,但是功能實現了,確實刪掉外鍵約束了-- 注意刪除外鍵約束的時候,還要刪除對應的外鍵索引ALTER TABLE tb33 DROP INDEX tb33_ibfk_1;

  設定外鍵約束;刪除外鍵約束

 

-- 他只能修改 列定義和列的位置.無法改列的名ALTER TABLE tb33 CHANGE `ueername` VARCHAR(200) NOT NULL FIRST clsID;

  

   以上就是基本的資料庫操作指令,若果有差錯還請朋友們能指正,讓我們共同交流。

 

MySql資料庫基礎操作——資料庫、使用者的建立,表的製作、修改等

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.