<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                [TOC] ## 創建數據表 #### 1、基本語法: ~~~ CREATE TABLE IF NOT EXISTS 數據表名稱 ( 字段名稱1 [AS 別名] 字段類型 [約束條件] [DEFAULT 默認值] [COMMENT 字段注釋], 字段名稱2 [AS 別名] 字段類型 [約束條件] [DEFAULT 默認值] [COMMENT 字段注釋], 字段名稱3 [AS 別名] 字段類型 [約束條件] [DEFAULT 默認值] [COMMENT 字段注釋], ...... )ENGINE = 表存儲引擎 DEFAULT CHARSET = 默認編碼集 AUTO_INCREMENT = 自增主鍵起始值; ~~~ #### 2、語法解釋: > * 字段名稱:不與MySQL關鍵字重名的任何有效標識符即可; >* `IF NOT EXISTS`:意思是“如果不存在”再創建數據表,防止重復建表引起錯誤; >* `AS 別名`:表中字段名均為英文單詞或縮寫,創建一個有意義的別名,使數據表查詢結果更加直觀、人性化; >* 字段類型:非常重要,本文后面有詳細介紹; >* 約束條件:主要是`NULL`(允許為空),`NOT NULL`(禁止為空)等,具體還要與字段類型相匹配; >* `DEFAULT 默認值`:如某字段設置了默認值,則新增時未賦值則取默認值; >* `COMMENT 字段注釋`:非必須,但可以使字段信息看上去再完整、直觀; >* `ENGINE = 表存儲引擎`: >>* MyISAM:讀取快速、成熟穩定、支持全文檢索、最常用,但不支持事務處理; >>* InnoDB:具備提交、回滾的事務處理,支持外鍵,戰用空間大,不支持全文檢索; >* `DEFAULT CHARSET 默認編碼集`: 通常與數據庫采用的編碼集相同(utf8)即可; >* `AUTO_INCREMENT = 自增主鍵起始值`:如果設置,將從該值開始自增,如設置為1001,則第一條記錄是1001,第二條是1002。如果不設置,主鍵將默認從1開始自增; * * * * * ### 3、字段類型: #### 字段類型也叫列類型,主要有:數值、字符串、日期/時間三大類。 1. 數值型:有無符號和有符號之分,直接書寫,不要加引號,<span style="color:ForestGreen">長度僅影響顯示,不影響精度。</span> 1. 整型:又分為五類 1. INT : 標準整型,4字節,取值范圍大約正負21億,足以應付正常開發需要; 2. SMALLINT:小整數,2字節,取值范圍大約正負3.2萬之間,無符號翻倍。 3. TINYINT:極小整數,1字節,取值-128~127,無符號:0~255。 4. 其它:MEDIUMINT(3字節),BIGINT(8字節),不太常用。 2. 浮點型: 1. FLOAT:最常用,用4字節或8字節表示,具體依平臺而定; 2. DOUBLE:雙精度8字節; 3. DECIMAL:以字符串形式存儲的浮點數,大小自定義,用于會計領域等。 2. 字符串類型: 1. CHAR(長度): 固定寬度存儲字符串,忽略原始字符串長度; 2. VARCHAR(長度):可變長度字符串,根據原始字符串長度存儲; 3. TEXT:小型文本,不能設默認值和長度; 4. LONGTEXT:超大文本,同樣不可設默認值和長度; 5. ENUM(枚舉):在括號中集合數據中,只可以單選,無默認值; 6. SET(集合):集合最大64個成員,可以多選,無默認值。 3. 日期/時間類型(不要設置長度): 1. DATE:3字節,格式 YYYY-MM-DD,如 2016-10-20; 2. TIME:3字節,格式 hh:mm:ss,如 12:25:35; 3. DATETIME:8字節,格式 YYYY-MM-DD hh:mm:ss,如 2016-10-20 12:25:35; 4. TIMESTAMP:3字節時間戳,格式YYYYMMDDhhmmss共14位,可設置顯示長度進行截取操作,必須是偶數長度,常見6位,8位,12位; 5. YEAR:單字節,格式 YYYY,顯示年份,如2016。 * * * * * ### 4、約束條件: > 主要有UNSIGNED、ZEROFILL、AUTO_INCREMENT、NULL / NOT NULL、DEFAULT等。 |序號| 約束條件 | 字段類型 | 說明 | |---| --- | --- | --- | |1 | UNSIGNED | INT , FLOATT等數值型 | 全是正數,范圍擴大一倍 | | 2 | ZEROFILL | INT , FLOAT 等數值型 | 寬度大于實際長度時補足前導零 | |3 | AUTO_INCREMENT | INT |無符號、默認從1開始自增,接受NULL或空值 | | 4 | NULL / NOT NULL |不限制 | 為空或不為空 | | 5 | DEFAULT | 非TEXT類型或主鍵 | 添加新記錄時沒賦值,則取默認值 | * * * * * ### 5、實例 ##### 任務:創建員工信息表staff staff數據表結構如下: | 序號 | 字段名 | 類型 | 寬度 | 約束 | 默認值|備注 | | --- | --- | --- | --- | --- | --- | | 1 | id | 整型 | 4位 | 無符號、不為空、自增、主鍵|無 | 編號 | | 2 | name | 變長字符串 | 30位 | 不為空 | 無 |姓名 | | 3 | sex | 整型 | 1位 | 不為空 | 1 |性別1男0女| | 4 | salary |浮點型 | 共10位小數2位 |無符號、不為空 |2000 |工資| | 5 | dept |變長字符串 | 20位 |不為空 | 開發部 |部門| | 6 | hiredate |日期 | 默認 | 不為空 | 0000-00-00 |入職日期| 要求數據表存儲引擎為MyISAM,默認編碼:utf8,自增主鍵起始:1001。 ##### 創建數據表SQL語句: ~~~ CREATE TABLE IF NOT EXISTS staff ( id INT(4) unsigned NOT NULL AUTO_INCREMENT COMMENT '編號', name VARCHAR(30) NOT NULL COMMENT '姓名', sex TINYINT(2) unsigned NOT NULL DEFAULT 1 COMMENT '性別1男0女', salary FLOAT(10,2) NOT NULL DEFAULT 2000.00 COMMENT '工資', dept VARCHAR(20) NOT NULL DEFAULT '開發部' COMMENT '部門' , hiredate DATE NOT NULL DEFAULT '0000-00-00' COMMENT '入職日期', PRIMARY KEY (id) )ENGINE = MyISAM DEFAULT CHARSET = utf8 AUTO_INCREMENT = 1001; ~~~ ##### 運行結果: ![](https://box.kancloud.cn/58783f5ffa8109d17eb33482ffb3e6d1_1076x775.png) ##### 查看表結構: * 語法:`DESC 表名` ![](https://box.kancloud.cn/e19a6a06e2779ec10e1e479fa542e6b2_1076x775.png) ## 總結: >[success] 數據表,是我們ThinkPHP開發中,數據庫操作的重要載體。而創建數據表,則是最重要的一環。一個結構良好、健壯的表結構是我們所有模型操作的基礎。 #### 請同學們,對于熟練創建數據表技能,給予足夠重視!
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看