drop database if exists schoolinfo;
create databse schoolinfo;
use schoolinfo;
create table school(
scid int(11) primary key auto_increment,
scName varchar(30) not null
)ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
insert into school values(1,'Sa');
create table grade(
gid int(11) primary key auto_increment,
gName varchar(30) not null,
scid int(11) not null
)ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
insert into grade values(1,'Ga',1);
alter table grade add constraint fk_scid foreign key (scid) references school(scid);
create table student(
stid int(11) primary key auto_increment,
stName varchar(30) not null,
gid int(11) not null
)ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
alter table student add constraint fk_gid foreign key (gid) references grade(gid);
insert into student values(1,'aa',1);
开启事务
start transaction;
insert into student values(1,'aa',1);
savepoint addOne;
insert into student values(2,'bb',1);
savepoint addTwo;
rollback to addOne;
commit;
+------+--------+-----+
| stid | stName | gid |
+------+--------+-----+
| 1 | aa | 1 |
+------+--------+-----+
1 row in set (0.00 sec)
create databse schoolinfo;
use schoolinfo;
create table school(
scid int(11) primary key auto_increment,
scName varchar(30) not null
)ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
insert into school values(1,'Sa');
create table grade(
gid int(11) primary key auto_increment,
gName varchar(30) not null,
scid int(11) not null
)ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
insert into grade values(1,'Ga',1);
alter table grade add constraint fk_scid foreign key (scid) references school(scid);
create table student(
stid int(11) primary key auto_increment,
stName varchar(30) not null,
gid int(11) not null
)ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
alter table student add constraint fk_gid foreign key (gid) references grade(gid);
insert into student values(1,'aa',1);
开启事务
start transaction;
insert into student values(1,'aa',1);
savepoint addOne;
insert into student values(2,'bb',1);
savepoint addTwo;
rollback to addOne;
commit;
+------+--------+-----+
| stid | stName | gid |
+------+--------+-----+
| 1 | aa | 1 |
+------+--------+-----+
1 row in set (0.00 sec)