mysql之基礎syntax筆記 no2

2021-09-02 22:11:21 字數 3109 閱讀 8412

mysql資料庫 筆記

1:建立乙個資料庫

create datebase 庫名;
2:建立乙個資料表

use uses;

create table peoples(

type varchar(20), #型別

age varchar(20), #生存年齡

birth date, #歷史存在時間日期

death date #歷史消亡日期

)

3:複雜建立乙個資料表

use uses;

create table peoples(

id int(10) not null unique primary key, #id/不允許為空/不能重複/設定為主鍵

type varchar(20) not null, #型別

age varchar(20), #生存年齡

birth date, #歷史存在時間日期

death date #歷史消亡日期

)

4:對建立好錶的操作

增加一列:

alter table peoples

add subject char(20) not null unique; #add 列名插入一列資料/不為空/不重複

刪除一列:

alter table peoples

drop column subject; #drop subject科目

修改一列:

use users;

alter table peoples

change hobby birth date; #這個 是change 修改前的字段 修改後的字段 修改後的型別

修改乙個字段型別:

alter table peoples modify new1 varchar(10);	#modify 欄位名 型別
重新命名乙個資料表名字:

rename table peopels to animals;				#rename table 原表名 to 修改後表名
5:設定外來鍵索引

*(前言:本條說明的是,假設乙個世界裡面所有的生物統稱為動物,那麼動物就會分很多種類 科目等,animals表裡面存放著動物的型別type,生存年齡age,消亡年齡death等,然後cat表裡面是乙個具體的動物他有他的種類names,這樣兩個表中就存在一種約束關係(constraint)——animals表中的type型號受到cat 表中names的約束,ps:講得比較low,能理解就好。)

先建立乙個表:

create table cat

( id int(10) not null unique primary key,

names varchar(10) not null

)

給cat表設定乙個索引:

alter table cat

add index idx_type(names);

#add index 為cat表設定索引 在names欄位上 給這個索引起名叫做idx_name

給animals表也設定索引:

alter table animals

add index idx_names(type);

#add index 為animals表設定索引 在name欄位上 給這個索引起名叫做idx_names

為animals表設定外來鍵:

alter table animals add constraint fk_type_name

foreign key(type)

references cat(names);

*(

上文第一行是說要為animals表設定外來鍵,外來鍵取名叫做fk_type_name;

上文第二行是將本表的type設定為外來鍵 ;

上文的第三行是說這個外來鍵受到約束來自於cat表的names欄位;)

6:級聯操作

技術人員發現,乙個月之前輸入到 animals 表中的某個型別的 type (可能有很多態別)的型別全都輸錯了乙個字母,現在需要改正。我們希望的是,當 cat 表中那些 referenced column 有所變化時,相應表中的 referencing column 也能自動更正。

可以在定義外來鍵的時候,在最後加入這樣的關鍵字:

on update cascade;
即在主表更新時,子表(們)產生連鎖更新動作,似乎有些人喜歡把這個叫「級聯」操作。

如果把這語句完整的寫出來,就是:

alter table animals add constraint fk_type_name

foreign key(type)

references cat(names);

on update cascade;

7:alter database語法

alter  [db_name]

alter_specification [, alter_specification] ...

alter_specification:

[default] character set charset_name

| [default] collate collation_name

alter database用於更改資料庫的全域性特性。這些特性儲存在資料庫目錄中的db.opt檔案中。要使用alter database,您需要獲得資料庫alter許可權。

character set子句用於更改預設的資料庫字符集。collate子句用於更改預設的資料庫整序。資料庫名稱可以忽略,此時,語句對應於預設資料庫。也可以使用alter schema。

mysql 修改多筆資料 MySQL之快筆 一

dbms 當寫程式時資料庫在本地的 1.找到目錄2.新增資料 windows下mysql初始化 mysql initialise 建立client mysql u root p 建立mysql windows服務 mysql install 執行mysql服務 net strat mysql 終止m...

MySQL基礎之了解MySQL

資料庫是乙個以某種有組織的方式儲存的資料集合。可以將資料庫理解為乙個檔案櫃,此檔案櫃是乙個存放資料的物理位置,不管資料是什麼以及如何組織的 資料庫 database 儲存有組織的資料的容器 通常是乙個檔案或一組檔案 資料庫並不代表通常使用的資料庫軟體 資料庫軟體應該稱為dbms 資料庫管理系統 資料...

MySQL之查詢基礎

列的查詢 從表中選取資料時,需要使用select語句。通過select語句查詢並選取出必要資料的過程稱為匹配查詢或查詢。基本的select 語句 select 列名 from 表名 where 條件表示式 select子句列舉了希望從表中查詢出的列的名稱,from子句指定選取出資料的表的名稱。執行流...