mysql入门
连接数据库
A:用命令连接mysql(注意-h -u -p之后都是直接连ip用户名和密码,没有空格,示列如下)
mysql -h127.0.0.1 -uroot -p123456
-h服务器ip
-u 用户名
-p 密码
B:使用客户端连接
退出数据库
exit
quit
建数据库
—删除库(如果存在删除)
drop database if exist studb;
—创建数据库,设置编码格式
create database 数据库名 default character set utf8;
存储数据类型
int float date datetime
decimal(总位数,保留小数位数)
char(20) 确定长度的字符串
varcher(20)不确定长度的字符串
blob 二进制大对象 (存有格式的文本)
clob 大文本对象 (纯文本,无格式)
删除表
drop table if exists student;
建表(*指定列名和列类型,多个列之间用“,”隔开,建表最后一个字段[最后一列]不能用逗号结束,一般要指定引擎和默认编码*)
—使用studb数据库
--use studb;
create table student
(id int,
namevarchar(20),
ageint,
genderchar,
addressvarchar(50)
)engine=innodb default charset=utf8;
建约束(添加约束)
1)主键约束 primary key ————唯一,非null
2)唯一约束 unique ————-唯一,可以有一个null
3)自定义约束 check ————-姓名只能男女,年龄18-40(mysql5.6暂不支持)
4)非空约束 not null
5)默认值 default
6)外键约束 foreign key
A:建表时同时创建约束!分两种,第一种是直接在字段后紧跟着约束条件,第二种是给约束取名字,紧跟在最后一个字段后增加所有约束(不包括not null)
drop table if exists student;
create table student
(id int primary key, -———-主键
name varchar(20) unique notnull, --唯一+非空
age intcheck(age between18 and 40),-———check
—age int check(age>= 18 and age<=40),
genderchar(1)** check(gender=‘男’ orgender = ‘女’)**,
addressvarchar(50) default ‘地址不详’-———默认值
— constriant un_name unique(name)
)engine=innodb default charset=utf8;
B:建表完毕后再添加约束
—- 增加约束
alter table student
add constraint uq_name unique(NAME),
add constraint ck_age check(**age between18 and 40**)
删除约束
— 删除唯一约束
alter table student drop index uq_name;
— 删除非空约束
alter table student modify name **archer(20);**
—删除主键约束
alter table student drop primary key
还没有评论,来说两句吧...