您的位置:

mysql数据库用sql语句建表,数据库怎么用sql语句建表

本文目录一览:

sql怎么创建表

1.1 创建表方法

创建表是指在已存在的数据库中建立新表。这是建立数据库最重要的一步,是进行其他操作的基础。

1.1.1 创建表的语法形式

CREATE TABLE 表名 (

属性名 数据类型 [ 完整性约束条件 ],

属性名 数据类型 [ 完整性约束条件 ],

......

属性名 数据类型 [ 完整性约束条件 ],

)[ 表类型 ] [ 表字符集 ];

SQL 是不区分大小写。下面将会具体介绍SQL,这种创建表是通过什么方式起来的效果怎么样?

命名规范:

1. 命名富有意义 ( 英文或英文组合 )

2. 自定义名称使用小写

3. MySQL 语句使用大写

CREATE TABLE IF NOT EXISTS data_house(

id INT,

name VARCHAR(20);

gender BOOLEAN,

) Engine = MyISAM;

上面 SQL 语句的含义是:如果不存在 text1 表,就创建它,包含 3 个字段 id 、 name 和 gender ,它们的类型分别是整形、字符型和布尔型,创建的表的类型是 MyISAM 。

完整性约束条件表

PRIMARY KEY 标识该属性为该表的主键,可以唯一的标识对应的元组

FOREIGN KEY 标识该属性为该表的外键,是与之联系的某表的主键

NOT NULL 标识该属性不能为空

UNIQUE 标识该属性的值是唯一的

AUTO_INCREMENT 标识该属性的值自动增加,这是 MySQL 的 SQL 语句的特色 (null,0)

DEFAULT 标识该属性设置默认值 (not null defualt 0,not null default 0.0,not null default '')

1.1.2 设置表的主键

主键是表的一个特殊字段。该字段能惟一地标识该表中的每条信息。主键和记录的关系,如同身份证和人的关系。主键用来标识每个记录,每个记录的主键值都不同。身份证是用来标明人的身份,每个人都具有惟一的身份证号。设置表的主键指在创建表时设置表的某个字段为该表的主键。

主键的主要目的是帮组 MySQL 以最快的速度查找到表中的某一条信息。

主键必须满足的条件:

1. 主键必须是唯一的,表中任意两条记录的主键字段的值不能相同;

2. 主键的值是非空值;

3. 主键可以是单一的字段,也可以是多个字段组合。

1. 单字段的主键:

CREATE TABLE student1 (

stu_id INT PRIMARY KEY ,

stu_name VARCHAR(20) NOT NULL,

stu_gender BOOLEAN

) Engine = InnoDB;

2. 多字段主键 :

CREATE TABLE student2 (

stu_id INT,

course_id INT,

grade FLOAT,

PRIMARY KEY( stu_id, course_id )

)Engine = InnoDB;

1.1.3 设置表的外键

外键是表的一个特殊字段。如果字段 sno 是一个表 A 的属性,且依赖于表 B 的主键。那么,称表 B 为父表,表 A 为子表, sno 为表 A 的外键。通过 sno 字段将父表 B 和子表 A 建立关联关系。设置表的外键指在创建表设置某个字段为外键。

设置外键的原则:必须依赖于数据库中已存在的父表的主键;外键可以为空值。

外键的作用 : 是建立该表与其父表的关联关系。父表中删除某条信息时,子表中与之对应的信息也必须有相应的改变。例如, stu_id 就 student 表的主键, stu_id 是 grade 表的外键。当 stu_id 为 '123' 同学退学了,需要从 student 表中删除该学生的信息。那么, grade 表中 stu_id 为 '123' 的所有信息也应该同时删除。

CONSTRAINT 外键别名 FOREIGN KEY ( 属性 1.1, 属性 1.2... 属性 1.n);

REFERENCES 表名 ( 属性 2.1, 属性 2.2,..., 属性 2.n)

CREATE TABLE student3 (

id INT PRIMARY KEY,

stu_id INT,

course_id INT,

# 设置外键

CONSTRAINT C_fk FOREIGN KEY (stu_id, course_id) REFERENCES student2(stu_id, course_id)

) Engine = InnoDB;

1.1.4 设置表的非空约束

非空性是指字段的值不能为空值 (NULL) 。非空约束将保证所有记录中该字段都有值。如果用户新插入的记录中,该字段为空值,则数据库系统会报错。例如,在 id 字段加上非空约束, id 字段的值就不能为空。如果插入记录的 id 字段的值为空,该记录将不能插入。设置表的非空约束是指在创建表时为表的某些特殊字段加上 NOT NULL 约束条件。设置非空约束的基本语法规则如下:

属性名 数据类型 NOT NULL

mysql怎么用语句建表

mysql使用create语句进行创建数据库表,具体语法:

CREATE TABLE table_name (column_name column_type);

其中需要表名,表中字段名,字段属性;示例:创建一个学生信息表 sql如下

CREATE TABLE IF NOT EXISTS `student`(

`student_id` INT UNSIGNED AUTO_INCREMENT,

`student_name` VARCHAR(100) NOT NULL,

`student_age` int(3) NOT NULL,

PRIMARY KEY ( `student_id` ))ENGINE=InnoDB DEFAULT CHARSET=utf8;

mysql数据库建表和SQL修改表结构

工具/材料

Navicat For MySQL

01

打开Navicat for MySQL,找到一个数据库,然后右键单击表,选择新建表选项,如下图所示

02

在弹出的新建表界面,我们给表建一些字段,如下图所示,建好之后保存即可

03

建好的表会在数据库的右侧界面显示出来,需要查看哪个表直接选择即可

04

下面我们在test数据库中新建一个查询,通过alter table语句修改表中的age字段不为空,如下图所示