mysql21_mysql2
第三章 ? 保證數(shù)據(jù)完整性
3.1 數(shù)據(jù)完整性的概述:實(shí)體完整性 ?域完整性 ?引用完整性 ?用戶(hù)自定義完整性
3.2 數(shù)據(jù)完整性的實(shí)現(xiàn)
3.2.1 創(chuàng)建非空約束 ?(在定義列后加上 ?not null )默認(rèn)為 null
3.2.2 創(chuàng)建主鍵約束-- primary key ? 主鍵列不允許儲(chǔ)存null值。
3.2.3 設(shè)置唯一約束 ??unique
3.2.4 設(shè)置默認(rèn)值 ?default
3.2.5 設(shè)置檢查約束(MySQL不支持)
創(chuàng)建表:student
3.2.6 使用自動(dòng)編號(hào)列:auto_increment
1:?改變自動(dòng)增長(zhǎng)值:
alter table ?student??auto_increment=1000;
2:添加主鍵約束 ,唯一約束,默認(rèn)約束,自動(dòng)增長(zhǎng)(自動(dòng)增長(zhǎng)只能用在主鍵上),都用 change
alter table student ?change ?id id primary key ;
alter table student ?chang gender gender varchar(4)?unique;
alter table student ?change name name varchar(20) default "張三";
alter table student ?change idid int primary key ?auto_increment;
3:刪除主鍵約束,唯一約束(刪除唯一約束的時(shí)候 ?實(shí)際上是刪除索引),默認(rèn)約束,外鍵約束 ,都用drop
alter table student drop primary key;
alter table student drop index gender;
alter table student drop name name varchar(20);
alter table student drop primary key fk_name;
4:添加外鍵約束用add。
5:contraint ? 約束 ; references 引用 ; foreign key 外鍵 ;default 默認(rèn);unique 唯一;auto_increment 自動(dòng)增長(zhǎng);
第四章 ?使用DML語(yǔ)句更改數(shù)據(jù)
本章目標(biāo) ? 使用insert語(yǔ)句添加數(shù)據(jù) ? 使用update語(yǔ)句修改數(shù)據(jù) ? 使用delete語(yǔ)句刪除數(shù)據(jù)
4.1 添加新數(shù)據(jù)
4.1.1 插入單行記錄:
insert into (列名列表)values ()
或者 ? ? ? insert ?into values () ? ?-- 簡(jiǎn)寫(xiě)
4.1.2 插入多行記錄 :
insert into () values (),(),。。。。;
或者 ??insert ?into values ();
insert ?into values ();
insert ?into values ();
4.1.3 數(shù)據(jù)表的復(fù)制
1: 以創(chuàng)建新表的復(fù)制形式
create table?student_bak1 select * from student;
2:復(fù)制數(shù)據(jù)
create table student_bak2(
pk_id int primary key auto_increment,
name varchar(20) not null,
age int ,
gender char(3) ?default "男",
birthday date,
phoneNo char(12)
);
insert intostudent_bak2_select * fromstudent;
4.2 更改已有數(shù)據(jù)
update set where ;
4.3 刪除數(shù)據(jù)
delete from where ;
刪除 student_bak2的所有信息
delete from ?student_bak2; ?-- delete 語(yǔ)句刪除會(huì)記錄日志 刪完數(shù)據(jù)以后 自動(dòng)增長(zhǎng)依然繼續(xù)遞增
truncate table student_bak2; -- truncate 不會(huì)在日志中記錄的 ? 刪完數(shù)據(jù)以后 自動(dòng)增長(zhǎng)回到初始值 1
刪除
update student set age=null ?where name="未成年";
總結(jié)
以上是生活随笔為你收集整理的mysql21_mysql2的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: c++中的explicit关键字
- 下一篇: CarAppFocusManager