1. 程式人生 > >MySQL:03---DDL(資料庫與表的建立、刪除等),DML(表資料的增、刪、改等)

MySQL:03---DDL(資料庫與表的建立、刪除等),DML(表資料的增、刪、改等)

一、資料定義語言(DDL)

1.概念:定義資料庫、資料表、函式、檢視、索引、觸發器等

2.資料庫的基本操作

①資料庫的建立

  • create database 資料庫名;  //建立資料庫用預設的字符集
  • create database 資料庫名  default character set utf8;  //建立資料庫時指定字符集
  • create database  if not exists 資料庫名 default charset  utf8 collate utf8_general_ci;  //如果資料庫不存在則建立,並設定字符集與排序規則

②其他操作

  • 資料庫的刪除:drop 資料庫名;
  • 資料庫的選擇:use 資料庫名;
  • 列出所有資料庫:show databases;

3.表的基本操作

①建立資料表

  • create  table  表名(欄位名  列資料型別  約束,......);
  • 例:create table person(ID  int,name varchar(255));
  • create  table 表名(.....)engine=InnoDB,default  charset=utf8; //建表時指定引擎與字符集

②刪除表

一個表如果有子表外來鍵約束,則不能刪除

drop  table  表名;
drop  table  if exists  表名;  //如果表存在則刪除,更嚴謹

③查看錶的結構與內容

只列出表的結構資訊,不列出表內資料資訊

desc  表名;
show  columns from 表名;

④其他操作(新增列、刪除列、更改列的資料型別等)

  • 新增列:alter table 表名 add 欄位名 資料型別 [約束];
  • 刪除列:alter table 表名 drop column 欄位名;
  • 更改列的資料型別:alter table 表名 modify 欄位名  新資料型別;
  • 列出所有表:show tables;

二、資料操作語言(DML)

1.概念:對資料庫物件的增、刪、改

2.表的插入、更新、刪除

假設有一個表person,表中的欄位依次為 id int,name varchar(255),address varchar(255)

  • 單條插入:insert  into  person  values(1,'王五','安徽');  //或:insert into person(id,name,address) values(1,'王五','安徽');
  • 多條插入:insert  into  person  values(1,'王五','安徽'),(2,'張三','北京').....;
  • 指定欄位插入:insert  into  person(name,address)  values('王五','安徽');
  • 更新資料:update person set id=4 address='北京' where name='王五';
  • 刪除資料:delete from person where id=4;
  • 清空但不刪除表:truncate table 表名;

注意:

  • 更新或刪除資料時,如果不用whrere語句篩選,表中所有資料都會改變
  • where判斷條件是一個=號