MySQL知识回顾_mysql基础知识回顾_MySQL

创建数据库

creat table test(

#整数通常使用int

test_id int,

#小数通常使用decimal

test_price decimal,

#普通文本通常使用,并使用Default指定默认值

test_name varchar(255) default “Xxx”,

#大文本类型使用test

test_desc text,

#图片使用blob

test_img blob,

#日期类型使用DateTime

test_date datetime,

);

—————————————————————–

mysql 支持的列类型

1.tinyint,smallint,mediumint,int,bigint

2.float,double

3.decimal(dec)

4.date

5.time

6.datetime

7.timestamp

8.year

9.char

10.varchar

11.binary(定长的二进制字符串类型,以二进制形式保存字符串)

12.varbinary

13.tinyblob,blob,mediumblob,longblob

14.tinytext,text,mediumtext,longtext

15.enum(‘value1’,’value2’…)//枚举类型(只能是其中之一)

16.set(‘value1’,’value2’…)//集合类型(可以是其中几个)

——————————————————————–

#创建数据表,该数据表和user_info完全相同,数据也完全相同

create table hehe

as

select * from user_info;

———————————————————————

#修改表的结构的语法

alert table 表名

add(

#可以定义多个列定义

colum_name datatype [default expr],

);

———————————————————————

#为hehe数据表增加一个hehe_id字段,该字段类型为int

alter table hehe

add hehe_id int;

#为hehe数据包增加aaa,bbb字段,两个字段的类型都为varchar(25)

alter table hehe

add aaa varchar(25),bbb varchar(25);

———————————————————————-

#将hehe表的hehe_id列修改为varchar(255)类型

alter table hehe

modify hehe_id varchar(255);

#将hehe表的bbb列修改为int类型

alter table hehe

modify bbb int;

———————————————————————-

#删除指定的列

alter table hehe

drop column_name

#重命名数据表

alter table hehe

rename to wawa;

———————————————————————-

#将wawa表的字段bbb字段重命名为ddd

alter table wawa

change bbb ddd int;

#删除表

drop table 表名

———————————————————————-

数据库约束

not null

unique

primary key

foreign key

check

#not null约束

create table hehe(

#建立了非空约束,这意味着hehe_id不可以为null

hehe_id int not null,

#mysql为空约束不能指定名字

hehe_name varchar(25) default ‘xyz’ not null,

#下面列可以为空,默认值就是为null

hehe_gender varchar(28) null

);

———————————————————————

#增加非空约束

alter table hehe

modify hehe_gender varchar(30) not null

#取消非空约束

alter table hehe

modify hehe_name varchar(3) null;

#取消非空约束,并指定默认值

alter table hehe

modify hehe_name varchar(255) default ‘abc’ null;

——————————————————————-

unique约束

#建立表时创建唯一约束,使用列级约束语法建立约束

create table unique_test(

#建立了非空约束,着意味着test_id不可以为null

test_id int not null,

#建立了unique约束

test_name varchar(30) unique

);

#创建表时,使用表级约束语法建立约束

create table unique_test(

test_id int not null,

test_name varchar(30),

test_pass varchar(30),

#使用表级约束创建唯一约束

unique(test_name),

constraint test_uk unique(test_pass)

#constrain test1_uk unique(test_name,test_pass)

);

#修改唯一约束

alter table unique_test

add unique(test_name,test_pass);

#为表增加约束

alter table unique_test

modify test_name varchar(30) unique;

——————————————————————-

primary key约束

create table primaryKey_test(

primaryKey_id int primary key,

test_name varchar(255)

);

create table primaryTest(

primary_id int not null,

primary_name varchar(29),

constraint pk_test primary key(primary_id)

);

#删除主键约束

alter table test

drop primary key;

#使用表级语法增加主键约束

alter table test

add primary key(test_id ,test_name);

#使用列级约束语法增加主键约束

alter table test

modify test_name varchar(30) primary key;

——————————————————————

#为了保证从表参照的主表存在,通常应该先建立主表

create table teacher_table(

#auto_increment

teacher_id int auto_increment,

teacher_name varchar(255),

primary key(teacher_id)

);

create table student_table(

student_id int auto_increment primary key,

student_name varchar(255),

#指定java_teacher参照到teacher_table的teacher_id的列

java_teacher int references teacher_table(teacher_id)

#java_teacher int

#foreign key(java_teacher) references teacher_table(teacher_id)

#constraint student_teacher_fk foreign key(java_teacher) references

teacher_table(teacher_id)

);

———————————————————————————————

#check约束

create table test(

test_id int auto_increment primary key,

test_age int not null,

check(test_age>0 and test_age<120)

)120)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值