數據庫
數據庫的創建
CREATE DATABASE [IF NOT EXISTS 數據庫名
設置數據庫名
[DEFAULT] CHARACTER SET 字符集
字符集
[DEFAULT] COLLATE 排序規則
排序規則
注:[ ]內的內容可有可無,非必須條件
排序規則
utf8_general_ci
:不區分大小寫,這個你在註冊用戶名和郵箱的時候就要使用。
utf8_general_cs
:區分大小寫,如果用戶名和郵箱用這個 就會造成不良後果
utf8_bin
:字符串每個字符串用二進制數據編譯存儲。 區分大小寫,而且可以存二進制的內容
修改數據庫
ALTER DATABASE 數據庫名
和數據庫的創建格式一樣,除第一行改變,其餘一樣。
刪除數據庫
DROP DATAVASE 數據庫名;
數據類型介紹
數值型:
- 整型:INT
- 小數:浮點型:float(M,D),double(M,D),decima(M,D) ,(M爲全長,D爲小數點後長度。)
字符型:
- char:固定長度字符串,char(10)不管實際使用多少,最後都佔十個字符,用空格補全。
- varchar:可變長度字符串 ,varchar(20)最大20個字符,但是實際佔用多少就是多少。
日期型:
- date:日期類型 yyyy-MM-dd 2020-03-02
- time:事件類型 hh:mm:ss 19:47:30
- timestamp:時間戳 1970-1-1至2038-12-31 yyyyMMddhhmmss (受時區影響,受MySQL版本影響)
數據表
數據表的創建
CREATE TABLE 表名(
字段名 字段類型 [字段約束],
字段名 字段類型 [字段約束],
字段名 字段類型 [字段約束],
字段名 字段類型 [字段約束]
);
CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name
[(create_definition,...)]
[table_options] [select_statement]
create_definition: 每個字段都可以包括如下屬性的定義:
col_name type:
- [NOT NULL | NULL]:字段是否運行爲空 。
- [DEFAULT default_value] :爲字段定義默認值 。
- [AUTO_INCREMENT]:字段是否爲自動增長列,只有整型才能用 。
- [UNIQUE [KEY] | [PRIMARY] KEY]:字段是否唯一鍵或主鍵。
- [COMMENT ‘string’]:爲字段增加描述性文字。
table_options:
ENGINE|TYPE = engine_name:選項用於爲表指定存儲引擎 。
AUTO_INCREMENT = value:爲表設置 初始的 AUTO_INCREMENT 值 。
[DEFAULT] CHARACTER SET charset_name [COLLATE collation_name]:用於爲表 指定一個默
認字符集以及排序規則 。
COMMENT = ‘string’:表的註釋,最長 60 個字符 。
select_statement:
該選項表示新建的表是基於已有的查詢結果集創建的。
注:[ ]內的內容可有可無,非必須條件
創建臨時表
CREATE TEMPORARY TABLE [IF NOT EXISTS] tbl_name
[(create_definition,...)]
[table_options] [select_statement]
把正常建表當中的[ ]改爲 TEMPORARY就可以創建臨時表了,其餘寫法和正常建表一樣。
添加數據
insert into 數據表命 values('數據','數據');
刪除數據庫表
drop table +數據表名;
清空數據表
truncate table 表名;
複製表的數據和結構
CREATE TABLE 新表 SELECT * FROM 舊錶
複製表的結構
CREATE TABLE 新表 SELECT * FROM 舊錶 WHERE 1=2
或
CREATE TABLE 新表 LIKE 舊錶
謝謝閱讀