SQLyog基本操作(二)-創建數據庫表、數據表類型介紹


2.4 創建數據庫表(重點)

 -- 目標:使用SQLyog創建一個school數據庫表
 -- 在school數據庫中創建學生表student(列、字段)
 -- 屬性:
 -- 學號 id int(4)
 -- 姓名 name varchar(20)
 -- 登錄密碼 pwd varchar(30)
 -- 性別 sex varchar(2)
 -- 出生日期 birthday datetime
 -- 家庭住址 address varchar(100)
 -- 郵箱 email varchar(50)
 -- 主鍵 PRIMARY KEY,一般一個表只有一個唯一的主鍵
 -- 注意:使用英文(),表的名稱和字段盡量使用``括起來,避免與關鍵字重復
 --     字符串使用英文''括起來,所有的語句后面加上英文","表示結束
 --     最后一個語句沒有",",字符集是utf8而不是utf-8
 
 -- 實現代碼如下:
 CREATE DATABASE IF NOT EXISTS school
 USE school
 CREATE TABLE IF NOT EXISTS `student`(
   `id` INT(4) NOT NULL AUTO_INCREMENT COMMENT '學號',
   `name` VARCHAR(30) NOT NULL DEFAULT '匿名' COMMENT '姓名',
   `pwd` VARCHAR(20) NOT NULL DEFAULT '123456' COMMENT '密碼',
   `sex` VARCHAR(2) NOT NULL DEFAULT '女' COMMENT '性別',
   `birthday` DATETIME DEFAULT NULL COMMENT '出生日期',
   `address` VARCHAR(100) DEFAULT NULL COMMENT '家庭住址',
   `email` VARCHAR(50) DEFAULT NULL COMMENT '郵箱',
   PRIMARY KEY(`id`)
 ) ENGINE=INNODB DEFAULT CHARSET=utf8

格式
 CREATE TABLE IF NOT EXISTS `表名`(
  `字段名` 列類型(長度) [屬性] [索引] [注釋],
  `字段名` 列類型(長度) [屬性] [索引] [注釋],
  ......
  `字段名` 列類型(長度) [屬性] [索引] [注釋],
 )[表類型][字符集設置][注釋]

附:MySQL中數據類型的長度問題總結YAruli的博客-CSDN博客mysql中數據類型的長度問題總結

https://blog.csdn.net/YAruli/article/details/79187814

常用命令

 SHOW CREATE DATABASE school -- 查看創建school數據庫的語句

 SHOW CREATE TABLE student -- 查看創建student數據表的語句

右鍵可復制該語句內容:

可粘貼出的全部代碼:

 DESC student -- 顯示表的結構

 

2.5 數據表的類型

關於數據庫引擎

  • INNODB 現在默認使用的

  • MYISAM 早些年使用的(5.0之前的版本)

  MYISAM INNODB
事務支持 不支持 支持
數據行鎖定 不支持 支持
外鍵約束 不支持 支持
全文索引 支持 不支持
表空間的大小 較小 較大,約為前者的兩倍

數據行鎖定是一行鎖定,而不是表鎖;

外鍵約束,在數據庫級別關聯另一張表

常規使用規則:

  • MYISAM 節約空間,速度較快

  • INNODB 安全性高,事物的處理,多表多用戶操作

在物理空間存在的位置

        所有的數據庫文件都存在data目錄下,一個文件夾就對應一個數據庫,本質還是文件的存儲!

MySQL引擎在物理文件上的區別

  • INNODB在數據庫表中只有一個*.frm文件,以及上級目錄的ibdata1文件

  • MYSIAM對應文件

    • *.frm 表結構的定義文件

    • *.MYD 數據文件(data)

    • *.MYI 索引文件(index)

設置數據庫表的字符集編碼

   CHARSET=utf8 
   -- 不設置的話,會是mysql默認的字符集編碼(不支持中文)
   -- MySQL的默認編碼時Latin1,不支持中文
   -- 在my.ini中配置默認的編碼,不建議,最好在每個表中單獨設置字符集編碼utf8
   charset-set-server=utf8

附: mysql默認字符編碼設置教程:my.ini設置字符編碼堅持是一種修行的博客-CSDN博客my.ini修改字符編碼

https://blog.csdn.net/qq_30509055/article/details/82023572


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM