<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        MySQL中的主鍵以及設置其自增的用法教程

        來源:懂視網 責編:小采 時間:2020-11-09 20:54:28
        文檔

        MySQL中的主鍵以及設置其自增的用法教程

        MySQL中的主鍵以及設置其自增的用法教程:1、聲明主鍵的方法: 您可以在創建表的時候就為表加上主鍵,如: CREATE TABLE tbl_name ([字段描述省略...], PRIMARY KEY(index_col_name)); 也可以更新表結構時為表加上主鍵,如: ALTER TABLE tbl_name ADD PRIMARY
        推薦度:
        導讀MySQL中的主鍵以及設置其自增的用法教程:1、聲明主鍵的方法: 您可以在創建表的時候就為表加上主鍵,如: CREATE TABLE tbl_name ([字段描述省略...], PRIMARY KEY(index_col_name)); 也可以更新表結構時為表加上主鍵,如: ALTER TABLE tbl_name ADD PRIMARY

        1、聲明主鍵的方法:
        您可以在創建表的時候就為表加上主鍵,如:
        CREATE TABLE tbl_name ([字段描述省略...], PRIMARY KEY(index_col_name));
        也可以更新表結構時為表加上主鍵,如:

        ALTER TABLE tbl_name ADD PRIMARY KEY (index_col_name,…);
        /*
        創建一個qq表,將qq_id設為主鍵,且沒有對其進行NOT NULl約束
        */
        create table qq(
        qq_id int(10),
        nick_name varchar(255) not null,
        primary key (qq_id))
        /*
        插入一條數據,將qq號設為10000(咱也幻想一下),昵稱設為"simaopig"
        */
        INSERT INTO qq( qq_id, nick_name )
        VALUES (
        '10000', 'simaopig');
        

        主鍵被認為是NOT NULL和UNIQUE約束最好的結合。如果這些列沒有被明確地定義為NOT NULL,MySQL會隱含地定義這些列。


        2、主鍵也是索引:
        剛才已經說了,主鍵其實也是索引,甚至在MySQL的術語里面“鍵”就等于“索引”,所以“外鍵”一定要先設為“索引”。所以主鍵也應該和索引一樣,既可以作用于單獨的字段,又可以作用于多個字段。
        舉個簡的例子吧,我住3單元,501室,我叫小小子,那么只有3單元501室才能在本小區表里面唯一確定我家。因為2單元,501室住著的可能也是個小小子,所以只有兩個字段才能唯一確定我,也就是說可以二者組合作為主鍵。組合的主鍵,每個列都會隱含定義NOT NULL約束,且其二者加在一起被定義了UNIQUE 惟一約束。

        /*
        創建防火墻表,將host 和port組合設為主鍵,注意我沒有將port設NOT NULL約束
        */
        create table firewall(
        host varchar(11) not null,
        port smallint(4),
        access enum('deny', 'allow') not null,
        primary key (host,port))
        /*
        插入一條新的記錄,沒有啥問題
        1 row(s) inserted.
        */
        INSERT INTO firewall (
        host ,
        port ,
        access)
        VALUES (
        '202.65.3.87', '21', 'deny');
        

        3、設置主鍵自增
        下面我們通過一個實例來講解設置主鍵自增的方法:
        首先創建數據庫,創建表

        mysql> create database ssh2; 
        
        Query OK, 1 row affected (0.04 sec) 
        

         

        mysql> use ssh2; 
        
        Database changed 
        
        mysql> create table user( 
         -> id integer primary key, 
         -> firstname varchar(200) not null, 
         -> lastname varchar(200) not null, 
         -> age integer 
         -> ); 
        
        Query OK, 0 rows affected (0.46 sec) 
        
        

        給主鍵增加一個自增的功能:

        mysql> alter table user modify id integer auto_increment ; 
        
        Query OK, 1 row affected (0.28 sec) 
        Records: 1 Duplicates: 0 Warnings: 0 
        
        

        這樣,上面的user表里面的主鍵,id可以自增了。

        給上面的主鍵id增加默認值和自增功能。

        mysql> alter table user modify id integer auto_increment ; 
        
        Query OK, 0 rows affected (0.39 sec) 
        Records: 0 Duplicates: 0 Warnings: 0 
        

         

        mysql> alter table user modify id integer default '1'; 
        
        Query OK, 0 rows affected (0.16 sec) 
        Records: 0 Duplicates: 0 Warnings: 0 
        

         

        mysql> alter table user modify id integer auto_increment ; 
        
        Query OK, 1 row affected (0.28 sec) 
        Records: 1 Duplicates: 0 Warnings: 0 
        
        

        MySql獲取系統時間:

        mysql> alter table user add createtime timestamp default current_timestamp; 
        
        Query OK, 2 rows affected (0.17 sec) 
        Records: 2 Duplicates: 0 Warnings: 0 
        
        

        MySql設置主鍵不能為空,還要自動增長(這里沒有設置默認值,但是默認是1,從1開始增長。),還要得到系統默認日期:

        mysql> create table dd( 
         -> id int primary key not null auto_increment, 
         -> name varchar(20), 
         -> time timestamp default current_timestamp 
         -> ); 
        
        Query OK, 0 rows affected (0.10 sec) 
        
         
        mysql> insert into dd(name) values ('fhihgifds');

          

        Query OK, 1 row affected (0.14 sec) 
        

         

        mysql> insert into dd(name) values ('steven'); 
        
        Query OK, 1 row affected (0.08 sec) 
        

         

        mysql> select * from dd; 
        
        +----+-----------+---------------------+ 
        | id | name | time | 
        +----+-----------+---------------------+ 
        | 1 | fhihgifds | 2011-03-27 01:58:46 | 
        | 2 | steven | 2011-03-27 01:59:35 | 
        +----+-----------+---------------------+ 
        2 rows in set (0.08 sec) 
        

         

        mysql> insert into dd(name) values ('anthony'); 
        
        Query OK, 1 row affected (0.09 sec) 
        

         

        mysql> select * from dd; 
        
        +----+-----------+---------------------+ 
        | id | name | time | 
        +----+-----------+---------------------+ 
        | 1 | fhihgifds | 2011-03-27 01:58:46 | 
        | 2 | steven | 2011-03-27 01:59:35 | 
        | 3 | anthony | 2011-03-27 02:00:07 | 
        +----+-----------+---------------------+ 
        3 rows in set (0.00 sec) 
         
        

        您可能感興趣的文章:

      1. MySQL 8.0的關系數據庫新特性詳解
      2. Mysql 8 新特性 window functions 的作用
      3. MySQL 8 新特性之Invisible Indexes
      4. 利用Java的MyBatis框架獲取MySQL中插入記錄時的自增主鍵
      5. 深入探尋mysql自增列導致主鍵重復問題的原因
      6. mysql修改自增長主鍵int類型為char類型示例
      7. MySQL8新特性:自增主鍵的持久化詳解
      8. 聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        MySQL中的主鍵以及設置其自增的用法教程

        MySQL中的主鍵以及設置其自增的用法教程:1、聲明主鍵的方法: 您可以在創建表的時候就為表加上主鍵,如: CREATE TABLE tbl_name ([字段描述省略...], PRIMARY KEY(index_col_name)); 也可以更新表結構時為表加上主鍵,如: ALTER TABLE tbl_name ADD PRIMARY
        推薦度:
        標簽: id 主鍵 mysql
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 亚洲人成网站999久久久综合| 亚洲精品无码乱码成人| 亚洲国产美女在线观看| 1000部拍拍拍18勿入免费视频下载 | 日本亚洲欧美色视频在线播放 | 亚洲AV中文无码乱人伦下载| CAOPORN国产精品免费视频| 亚洲综合图色40p| 国产免费拔擦拔擦8X高清在线人| 亚洲一级片内射网站在线观看| 污视频网站在线观看免费| 亚洲国产成人VA在线观看| 久久www免费人成看国产片| 亚洲日韩中文字幕在线播放| 免费视频一区二区| 亚洲的天堂av无码| 免费看少妇作爱视频| 曰批免费视频播放在线看片二| 亚洲人午夜射精精品日韩| 很黄很污的网站免费| 亚洲av永久无码嘿嘿嘿| 曰皮全部过程视频免费国产30分钟 | 成人A级毛片免费观看AV网站| 亚洲变态另类一区二区三区| 国产一级淫片免费播放电影| 9久久免费国产精品特黄| 亚洲精品乱码久久久久久下载 | 91av免费观看| 亚洲AV无码专区国产乱码不卡 | 免费羞羞视频网站| 国产日韩精品无码区免费专区国产 | 特级毛片A级毛片100免费播放| 国产成人综合亚洲AV第一页 | 国产一区二区三区在线免费| a级毛片免费播放| 亚洲伊人久久大香线蕉AV| 亚洲乳大丰满中文字幕| 成全高清视频免费观看| 中文无码日韩欧免费视频| 亚洲91精品麻豆国产系列在线| 国产午夜亚洲精品理论片不卡 |