第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

外鍵約束的表級(jí)約束和列級(jí)約束

外鍵約束的表級(jí)約束和列級(jí)約束

無悔欲 2017-09-13 21:33:00
創(chuàng)建表的語法我在官方的文檔中看到了這樣的CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name ? ?(create_definition,...)1. 上面語法中的create definition可以為是?col_name column_definition,對(duì)應(yīng)下面列舉的第一個(gè)create_definition: ? ?col_name column_definition ?| [CONSTRAINT [symbol]] PRIMARY KEY [index_type] (index_col_name,...) ? ? ?[index_option] ... ?| {INDEX|KEY} [index_name] [index_type] (index_col_name,...) ? ? ?[index_option] ... ?| [CONSTRAINT [symbol]] UNIQUE [INDEX|KEY] ? ? ?[index_name] [index_type] (index_col_name,...) ? ? ?[index_option] ... ?| {FULLTEXT|SPATIAL} [INDEX|KEY] [index_name] (index_col_name,...) ? ? ?[index_option] ... ?| [CONSTRAINT [symbol]] FOREIGN KEY ? ? ?[index_name] (index_col_name,...) reference_definition ?| CHECK (expr)1中col_name column_definition的column_definition 可以是[reference_definition],對(duì)應(yīng)下面列舉的最后一個(gè)column_definition: ? ?data_type [NOT NULL | NULL] [DEFAULT default_value] ? ? ?[AUTO_INCREMENT] [UNIQUE [KEY] | [PRIMARY] KEY] ? ? ?[COMMENT 'string'] ? ? ?[COLUMN_FORMAT {FIXED|DYNAMIC|DEFAULT}] ? ? ?[STORAGE {DISK|MEMORY|DEFAULT}] ? ? ?[reference_definition]2中的[reference_definition]可以使用下面的語法reference_definition: ? ?REFERENCES tbl_name (index_col_name,...) ? ? ?[MATCH FULL | MATCH PARTIAL | MATCH SIMPLE] ? ? ?[ON DELETE reference_option] ? ? ?[ON UPDATE reference_option]那么問題來了我這么寫為什么不行?t1已經(jīng)定義了和t2相同的結(jié)構(gòu)CREATE TABLE t2(id TINYINT UNSIGNED NOT NULL AUTO_INCREMENT,username VARCHAR(20) REFERENCES t1(username));create_definition: ? ?col_name column_definitionusername VARCHAR(20) REFERENCES t1(username) 對(duì)應(yīng) create_definitionusername 對(duì)應(yīng) col_name ?VARCHAR(20) REFERENCES t1(username) 對(duì)應(yīng)column_definitioncolumn_definition: ? data_type ? [reference_definition]VARCHAR(20) 對(duì)應(yīng) data_type?REFERENCES t1(username) 對(duì)應(yīng)??[reference_definition]reference_definition對(duì)應(yīng)如下的語法。reference_definition: ? ?REFERENCES tbl_name (index_col_name,...) ? ? ?[MATCH FULL | MATCH PARTIAL | MATCH SIMPLE] ? ? ?[ON DELETE reference_option] ? ? ?[ON UPDATE reference_option]最后再問一下,外鍵約束有幾種聲明方式,表級(jí)約束和列級(jí)約束還是沒搞懂,老師說的那個(gè)可以在列定義時(shí)聲明,也可以在列定以后聲明,什么是定義時(shí),什么是定以后?例如:CREATE TABLE t2(? ? -> id TINYINT UNSIGNED PRIMARY KEY AUTO_INCREMENT,? ? -> name VARCHAR(10) NOT NULL,? ? -> pid TINYINT UNSIGNED ,? ? -> FOREIGN KEY(pid) REFERENCES t1(id)? ? -> );這個(gè)是定以時(shí)還是定以后?定義時(shí)是寫在一個(gè)語句中還是在一個(gè)括號(hào)中?老師說的NOT NULL 和 DEFAULT約束只能是列級(jí)約束,意思是只能在一條語句中連著寫,比如name VARCHAR(10) NOT NULL??
查看完整描述

1 回答

  • 1 回答
  • 0 關(guān)注
  • 1887 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)