Mysql学习笔记01
1. 如何连接数据库
在操作数据库之前,需要连接它,输入命令:mysql -u用户名 -p密码。
mysql -uroot -p123123
2.如何创建数据库
连接上MySQL之后就可以进行数据库的操作了,接下来我们创建一个名为TestDb的数据库:创建完数据库之后我们可以通过show databases;命令查看MySQL中已存在的数据库。
3. 如何让创建数据表
CREATE TABLE 表名
(
字段名,数据类型,
字段名,数据类型,
.....
)
接下来我们通过一个例子来了解如何在指定数据库中创建表:
首先创建数据库(在MySQL数据库中是不区分大小写的不过数据库的名字是区分大小写的),如下:
CREATE DATABASE MyDb;
然后选择数据库:
USE MyDb;
最后创建t_user表:
CREATE TABLE t_user
(
id INT,
username VARCHAR(32),
password VARCHAR(32),
phone VARCHAR(11)
);
4.添加主键约束
主键,是表中一列或者多列的组合,主键约束(Primary Key Constraint)要求主键列的数据唯一,并且不允许为空,主键能够唯一的标识表中的每一条记录,可以结合外键来定义与不同数据表之间的关系。
添加主键约束
有两种方式可以添加主键约束:
1.在定义列的同时指定主键;
2.在定义完字段之后再指定主键。
多字段联合主键
CREATE TABLE t_emp2
(
name VARCHAR(32),
deptId INT,
salary FLOAT,
PRIMARY KEY(name,deptId)
)
5.添加外键约束
外部关键字
在以后我们统一将外部关键字叫做外键,外键就是另一张表中的主键。
在MySQL中给表中字段添加外键约束的语法规则如下:
CONSTRAINT 外键名 FOREIGN KEY 字段名 REFERENCES 主表名(主键名)
实际操作如图:
6.添加常用的约束
- 怎么添加唯一约束
- 怎么添加非空约束
- 怎么使用默认约束
- 设置表的属性自动增加
怎么添加唯一约束
唯一约束(Unique Constraint)要求该列唯一,允许为空,但是只能有一个空值。唯一约束可以确保一列或者几列不出现重复值。
定义部门表的部门名称唯一,SQL语句如下:关键词 UNIQUE。
CREATE TABLE t_dept(
id INT PRIMARY KEY,
name VARCHAR(22) UNIQUE,
location VARCHAR(50)
)
怎么添加非空约束
关键词:NOT NULL;
例如:
CREATE TABLE t_dept(
id INT PRIMARY KEY,
name VARCHAR(22) NOT NULL,
location VARCHAR(50)
)
怎么使用默认约束
默认约束:即给字段一个默认值。
关键词:DEFAULT;
例如:
CREATE TABLE t_emp(
id INT PRIMARY KEY,
name VARCHAR(22),
sex VARCHAR(2) DEFAULT '男'
) DEFAULT CHARSET=utf8;
注意:
如果是添加字符串型默认值要使用单引号,如果是整型则不需要加任何符号;
如果要添加的是中文默认值,则需要加上DEFAULT CHARSET=utf8;使用英文字符则不需要。
设置表的属性值自动增加
在数据库应用中,经常有个需求就是,在每次插入新纪录时,系统自动生成字段的主键值,即:
关键词:AUTO_INCREMENT,默认情况下初始值和增量都为1。
例如:
CREATE TABLE t_tmp
(
id int PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(32)
)