中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

南寧做網(wǎng)站設(shè)計(jì)方案微商軟文范例

南寧做網(wǎng)站設(shè)計(jì)方案,微商軟文范例,網(wǎng)站制作代理,我想給圖書網(wǎng)站做代理1、查看約束 SHOW CREATE TABLE table_name 2、主鍵約束(PRIMARY KEY) 主鍵約束最顯著的特征是主鍵列中的值是不允許重復(fù)(唯一)的,通過主鍵約束可強(qiáng)制表 的實(shí)體完整性。當(dāng)創(chuàng)建或更改表時(shí)可通過定義 primary key 約束來創(chuàng)建主鍵。一個(gè)表只 能有一個(gè)primary key約束…

1、查看約束

?SHOW CREATE TABLE table_name

2、主鍵約束(PRIMARY KEY)

主鍵約束最顯著的特征是主鍵列中的值是不允許重復(fù)(唯一)的,通過主鍵約束可強(qiáng)制表 的實(shí)體完整性。當(dāng)創(chuàng)建或更改表時(shí)可通過定義 primary key 約束來創(chuàng)建主鍵。一個(gè)表只 能有一個(gè)primary key約束,且primary key約束中的列不能接受NULL值。

alter table tab_name add constraint pk_name primary key (deptno);

在創(chuàng)建表時(shí)有以下幾種方式:(三種)?

?-- 創(chuàng)建表時(shí)CREATE TABLE `table_name` (`id` int PRIMARY KEY,   -- 設(shè)置主鍵`name` varchar(20));CREATE TABLE `table_name` (`id` int NOT NULL,`name` varchar(20) ,PRIMARY KEY (`id`)      -- 設(shè)置主鍵);CREATE TABLE `table_name` (`id` int NOT NULL,`name` varchar(20) ,constraint pk primary key(id) -- 設(shè)置主鍵);

----設(shè)置主鍵的其它方式(用于修改字段的主鍵)

?-- 設(shè)置主鍵是deptnoALTER TABLE emp MODIFY empno INT PRIMARY KEY; -- 修改列的屬性來添加主鍵約束ALTER TABLE 表名稱 ADD PRIMARY KEY(id);ALTER TABLE dept ADD CONSTRAINT pk_name PRIMARY KEY(deptno);

?----刪除主鍵

?ALTER TABLE 表名稱 DROP PRIMARY KEY; -- 【推薦】

3、自增長列(AUTO_INCRUEMENT)

并不是所有表在設(shè)計(jì)完成后都能找到適合作為主鍵的列,為此數(shù)據(jù)庫提供了自增長列,自 增長列是數(shù)值類型( INT , FLOAT , DOUBLE 等)的,其值是由數(shù)據(jù)庫自動(dòng)維護(hù)的,是永遠(yuǎn)都不 會(huì)重復(fù)的,因此自增長是最適合作為主鍵列的。在創(chuàng)建表時(shí),通過 auto_increment 關(guān)鍵 字來標(biāo)識(shí)自增長列,在MySQL數(shù)據(jù)庫中自增長列可以是主鍵列,也可以是唯一列(有唯一 約束的列)。

特點(diǎn):

1. 標(biāo)識(shí)列必須和一個(gè)Key搭配(Key指主鍵、唯一、外鍵....)

2. 一個(gè)表最多有一個(gè)標(biāo)識(shí)列

3. 標(biāo)識(shí)列的類型只能是數(shù)值型

4. 標(biāo)識(shí)列可以通過 SET auto_increment_increment = 3;?或者??????????????????????????????????????????????????????SET @@auto_increment_increme nt = 3; 設(shè)置步長(全局),可以通過插入行時(shí)手動(dòng)插入標(biāo)識(shí)列值設(shè)置起始值。(思 考:什么情況下此設(shè)置會(huì)失效)

如果設(shè)置步長會(huì)從 1 + 步長 依次遞增。

如果表中已有數(shù)據(jù),會(huì)按照 1 + 步長進(jìn)行計(jì)算,如果這個(gè) 值 已有則再加直到?jīng)]有

自增長與主鍵?

CREATE TABLE emp(empNo INT PRIMARY KEY AUTO_INCREMENT,job VARCHAR(10),mgr INT,sal DOUBLE,comm DOUBLE,deptno INT
)CHARACTER SET utf8;-- 設(shè)置自增長列的初始值
CREATE TABLE temp(id INT PRIMARY KEY AUTO_INCREMENT,name VARCHAR(2)
) AUTO_INCREMENT=10;-- 設(shè)置自增長列的初始值
ALTER TABLE emp AUTO_INCREMENT = 10;
alter table 表名稱 modify column id int auto_increment;-- 刪除自增長列
ALTER TABLE 表名稱 MODIFY COLUMN id INT;

4、唯一約束

對(duì)于非主鍵列中的值也要求唯一性的時(shí)候,就需要唯一約束。

CREATE TABLE `table_name` (`id` int NOT NULL,`name` VARCHAR(20) UNIQUE?? ??? ?-- 唯一約束
);CREATE TABLE `table_name`(`id` int NOT NULL,`name` VARCHAR(20),constraint uq_name UNIQUE(name)?? ?-- 唯一約束
);alter table 表名稱 ADD unique(列名稱);
alter table dept ADD constraint uq_name UNIQUE(deptname);# 刪除唯一約束
alter table tb_name drop constraint constraint_name;
alter table 表名稱 drop index 唯一約束名;?? ?-- 刪除索引
  • 唯一約束要求值不能重復(fù)
  • 一張表可以有多個(gè)唯一約束列
  • 約束默認(rèn)的名稱為其列名
  • 唯一約束創(chuàng)建后會(huì)自動(dòng)創(chuàng)建一個(gè)唯一索引

5、 默認(rèn)約束default

為列中的值設(shè)置默認(rèn)值,default ....,如果已經(jīng)定了值,默認(rèn)值就無效了

-- 創(chuàng)建表時(shí)
CREATE TABLE `table_name` (`id` int DEFAULT NULL,		# 默認(rèn)約束`name` varchar(20) unique,
);-- 添加默認(rèn)約束第一種
alter table 表名稱 modify column 列名 列類型 default 默認(rèn)值;
-- 添加默認(rèn)約束第二種
alter table 表名 change column old_col_name new_col_name new_type default value;-- 刪除
alter table 表名稱 modify column 列名 列類型; 	-- 將默認(rèn)值改為 NULL
ALTER TABLE tb_name ALTER col_name DROP DEFAULT;	 -- 刪除了默認(rèn)值,新增時(shí)必須有值
  • 創(chuàng)建表時(shí),不寫默認(rèn)值都默認(rèn) NULL (在無非空約束的情況下)
  • 默認(rèn)約束能和主鍵約束可以同時(shí)存在
  • 默認(rèn)約束不能和 AUTO_INCREMENT 同時(shí)使用

6. 非空約束

NOT NULL :非空,用于保證該字段的值不能為空。例如學(xué)生表的學(xué)生姓名及學(xué)號(hào)等等?

-- 創(chuàng)建表時(shí)
CREATE TABLE `table_name` (`id` int NOT NULL, # 非空約束`name` varchar(20),
);alter table 表名稱 modify column 列名 列類型 not null;-- 刪除
alter table 表名稱 modify column 列名 列類型 [null];

7. 外鍵約束

A表中列的值來自于另外一張表B的主鍵或唯一鍵的列稱為 外鍵FK,將被引用值得表稱為
主表或父表,將引用值得表稱為從表或子表。 例如: emp 表中有 deptno 列,值來自于 de
pt 表的 主鍵 deptno 。 dept 是主表, emp 是從表。
?

-- 創(chuàng)建表時(shí)
CREATE TABLE `dept`(dept_no INT PRIMARY KEY,dept_name VARCHAR(20),
)CREATE TABLE `emp` (`id` int NOT NULL,`name` varchar(20),`deptno` int,CONSTRAINT fk_dept_no FOREIGN KEY(deptno) REFERENCES dept(dept_no)
);alter table userinfo add constraint foreign key fk_dept_no (dept_no) REFERENCES dept(deptno);-- 刪除
ALTER TABLE tb_name DROP CONSTRAINT constraint_name;
alter table 表名稱 drop foreign key 設(shè)置外鍵時(shí)的名稱;?

?在外鍵約束中,主表(父表)是指有外鍵的表,子表(從表)是指沒有外鍵的表。 一般來說,外鍵是本表中的字段,本表是子表,通常外鍵引用父表的主鍵。但是當(dāng)外鍵引用的是父表不為主鍵的字段時(shí),此時(shí)外鍵所約束的列可以有一個(gè)或多個(gè)null同時(shí)出現(xiàn)。因?yàn)閚ull不是值,不存在重復(fù)。

  • 創(chuàng)建外鍵時(shí),會(huì)在引用表(從表)的字段上建立索引
    • 這個(gè)字段上有則不創(chuàng)建
  • 在 userinfo 表中添加或修改時(shí), dept_no 列的值必須是 dept 表中 deptno 字段中的存在值或者 NULL
  • 刪除主表數(shù)據(jù)時(shí),會(huì)先檢查被刪除數(shù)據(jù)在從表中有沒有對(duì)此數(shù)據(jù)的關(guān)聯(lián)(引用),如果有不能直接刪除。

如果想要解除此限制需要先禁用外鍵約束【不推薦】
我們可以在創(chuàng)建約束時(shí),設(shè)置級(jí)聯(lián)操作【具體如何操作?】

  • - `on delete CASCADE`/ `on update CASCADE` 級(jí)聯(lián)刪除 / 級(jí)聯(lián)更新
  • - `ON DELETE SET NULL` / `ON UPDATE SET NULL`

8、檢查約束?

check 檢查約束,在數(shù)據(jù)添加或修改時(shí)保證數(shù)據(jù)的有效性。符合表達(dá)式的才會(huì)正確執(zhí)行。

-- 創(chuàng)建檢查約束的集中方法:
CREATE TABLE users (... ,age INT CHECK (age >= 18)
);CREATE TABLE users (... ,CONSTRAINT chk_xxx CHECK(expr)
);ALTER TABLE emp2 MODIFY sal DOUBLE CHECK(sal >= 2000);
ALTER TABLE tb_name ADD CONSTRAINT chk_xx check(id > 10);-- 刪除約束
ALTER TABLE tb_name DROP CONSTRAINT tb_chk_num;
  • 在MySQL 8.0.16之前的版本中沒有 CHECK 約束。
http://www.risenshineclean.com/news/41558.html

相關(guān)文章:

  • 黃石網(wǎng)站設(shè)計(jì)制作今日疫情最新情況
  • 分銷seo實(shí)戰(zhàn)培訓(xùn)教程
  • 臨西網(wǎng)站建設(shè)google收錄提交入口
  • 天河企業(yè)網(wǎng)站建設(shè)青島網(wǎng)站建設(shè)有限公司
  • 群暉wordpress中文鄭州網(wǎng)站關(guān)鍵詞優(yōu)化公司哪家好
  • 深圳市龍華區(qū)房價(jià)萬能優(yōu)化大師下載
  • 東營網(wǎng)站建設(shè)收益高恩城seo的網(wǎng)站
  • 做淘寶的網(wǎng)站企業(yè)網(wǎng)站營銷的優(yōu)缺點(diǎn)
  • 唐山設(shè)計(jì)網(wǎng)站公司達(dá)內(nèi)教育
  • 明星做av網(wǎng)站百度郵箱注冊(cè)入口
  • 廣州市企業(yè)網(wǎng)站建設(shè)企業(yè)網(wǎng)絡(luò)推廣都是收費(fèi)
  • 學(xué)校網(wǎng)站怎么做推廣千博企業(yè)網(wǎng)站管理系統(tǒng)
  • 鄭州移動(dòng)網(wǎng)站建設(shè)sem和seo有什么區(qū)別
  • 三門峽市湖濱區(qū)建設(shè)局網(wǎng)站巨量算數(shù)數(shù)據(jù)分析
  • 免費(fèi)網(wǎng)站收錄入口百度云搜索引擎入口官網(wǎng)
  • 網(wǎng)站開發(fā)通常叫什么部門如何做市場(chǎng)推廣方案
  • 自己開加工廠怎么找訂單東莞seo優(yōu)化團(tuán)隊(duì)
  • vr軟件開發(fā)需要學(xué)什么優(yōu)化推廣網(wǎng)站淄博
  • 南京溧水城市建設(shè)集團(tuán)網(wǎng)站跨境電商網(wǎng)站開發(fā)
  • java答題對(duì)戰(zhàn)網(wǎng)站開發(fā)seo優(yōu)化服務(wù)商
  • vue做的小網(wǎng)站大興今日頭條新聞
  • 做web網(wǎng)站常用框架東莞網(wǎng)絡(luò)營銷推廣專業(yè)
  • 做網(wǎng)站后有人搶注品牌關(guān)鍵字開魯視頻
  • 阿里云上做網(wǎng)站靠譜嗎網(wǎng)絡(luò)優(yōu)化工程師證書
  • 建設(shè)銀行信用卡中心網(wǎng)站咸陽網(wǎng)站建設(shè)公司
  • 小程序登錄后臺(tái)seo聯(lián)盟
  • 網(wǎng)站網(wǎng)址有哪些臨沂seo整站優(yōu)化廠家
  • 網(wǎng)站制作公司源碼北京百度競(jìng)價(jià)托管
  • 深圳做網(wǎng)站的給說網(wǎng)店推廣有哪些
  • 做網(wǎng)站最好最佳的資源搜索引擎