mysql建表命令詳解


選擇數據庫

use databasename;

語法

create table tablename(
     col_name1 type auto_increment,
     col_name2 type not null|null default val,
     col_name3 type unique,
     .... ,
    primary key(col_name),
    index idx_name(col_name1,col_name2,...),
    foreign key(col_name) references tablename(col_name)
) engine=innoDB|myISAM default charset=字符集;
  • type:定義字段的數據類型。其中:字符串類型(char,varchar)需要指定長度;整型(int,bigint,tinyint等)和日期類型(datetime,timestamp等)只需要指定類型,不需要指定長度;decimal類型需要指定精度和小數位數。
  • primary key參數指定表的主鍵。
  • auto_increment參數指定字段為自增字段,該字段的類型必須為int或bigint才能設置為自增字段。
  • not null|null參數設置字段能否取空值。
  • default參數設置字段的默認值。
  • index參數用來創建索引。idx_name指定索引名,該參數可以省略,如果省略則索引名就是字段名。
  • foreign key參數用來指定外鍵。
  • engine參數用來設置引擎類型,常用的有innoDB和myISAM引擎。
  • default charset參數設置表所用的字符集。

數值類型參考

https://www.runoob.com/mysql/mysql-data-types.html

實例

create table test1( 
    id int auto_increment, 
    name varchar(50) not null, 
    status tinyint default 1,
    primary key(id) 
) engine=innoDB default charset=utf8;
create table test2( 
    id bigint auto_increment comment '主鍵',
    name varchar(100) not null comment '姓名',
    status int default 1 comment '狀態', 
    primary key(id), 
    index name(name) 
)engine=innoDB default charset=utf8
create table test3(
     id bigint primary key auto_increment comment 'id',
     name char(100) comment 'name',
     status int comment 'status',
     index name (name)
)engine=Myisam default charset=utf8mb3;


免責聲明!

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



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