mysql 學習記錄

2022-07-24 06:51:08 字數 1331 閱讀 7380

show databases;  //列出所有資料庫

select databases;  //顯示當前資料庫

create database 資料庫名 ;   // 建立資料庫

drop database 資料庫名 ;  //刪除資料庫

show full tables ;  // 檢視表結構 (顯示所有表)

show open tables ;  // 列舉表快取中當被代開的非 temporary 表 

show table status ; // 檢視表狀態

ddl:

create database test character set utf8 ; // 建立資料庫並設定字符集

alter table 表名 add 列名 資料型別 ;  // 新增一列

desc 表名 ;  // 檢視表字段資訊

alter table 表名 drop 列名 ;//  刪除一列

rename table 原始表名 to 修改後的名字 ; //  修改表名

show cretae table 表名 ; // 檢視表的建立語句

alter table 表名 character set 編碼 ; // 修改字元編碼

alter table 表名 change 原始列名 新列名 資料型別 ; // 修改列名 

drop table 表名 ; // 刪除表名

dml:

insert into 表名(表字段) values (); // 插入

update 表名 set  列名=新值 where 條件 ;// 修改

delete from 表名 [ where 列名 = 列值 ] ; // 刪除

truncate table 表名 ;// 清空表

1. delete 刪除表中資料,表結構還在,刪除後的資料可以找回

2. truncate 刪除是吧表直接 drop ,然後在建立乙個同樣的新錶,刪除的資料不能找回,執行速度比delete快、

執行快的原因:

因為delete執行刪除過程是每次從表中刪除行,並且同時將該行為的刪除操作作為事務記錄再日誌中儲存以便進行回滾

truncate 則一次性從表中刪除所有資料

第一正規化:資料表每一列(屬性)都是不可分割的基本資料項,要求資料的每一每一列都只能存放但單一值

第二正規化:要求資料表裡的所有資料都要和該資料的主鍵有完全相依關係

試圖通過增加冗餘資料或通過分組資料來優化資料庫讀取性的過程

show varianles like '%query_log%' ; 檢視慢日誌是否開啟 (所有執行時間超過 log_query_time 秒的 sql 語句都會被記錄在慢查詢日誌 中)

mysql學習記錄 MySQL學習記錄 2

in 子查詢 select from student where id in 1,2 not in 不在其中 select from student where id not in 1,2 is null 是空 select from student where age is null is not...

學習記錄 Mysql

mysql 是官方發布的 乙個為mysql設計的c 語言的api,這個api的作用是使工作更加簡單且容易。mysql 為mysql的c api的再次封裝,它用stl standard template language 開發並編寫,並為c 開發程式設計師提供象操作stl容器一樣方便的運算元據庫的一套...

Mysql 學習記錄

本篇部落格主要記錄一些開發中使用的到一些知識點。cdata 這是乙個xml語法 是的所有在cdata中的資料都不會被解析詳細描述參見 cdata語法 concat 函式用於將多個字串連線成乙個字串注意 如有任何乙個引數為null 則返回值為 null。或許有乙個或多個引數。如果所有引數均為非二進位制...