第4章 數(shù)據(jù)庫及表基本操作《數(shù)據(jù)庫原理及應(yīng)用》教學(xué)課件_第1頁
第4章 數(shù)據(jù)庫及表基本操作《數(shù)據(jù)庫原理及應(yīng)用》教學(xué)課件_第2頁
第4章 數(shù)據(jù)庫及表基本操作《數(shù)據(jù)庫原理及應(yīng)用》教學(xué)課件_第3頁
第4章 數(shù)據(jù)庫及表基本操作《數(shù)據(jù)庫原理及應(yīng)用》教學(xué)課件_第4頁
第4章 數(shù)據(jù)庫及表基本操作《數(shù)據(jù)庫原理及應(yīng)用》教學(xué)課件_第5頁
已閱讀5頁,還剩54頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

《數(shù)據(jù)庫原理及應(yīng)用》?精品課件合集目錄01

SQL概述02存儲(chǔ)引擎03字符集與字符編碼04MySQL數(shù)據(jù)庫管理05MySQL數(shù)據(jù)類型06MySQL數(shù)據(jù)表管理07數(shù)據(jù)表的數(shù)據(jù)操作第4章數(shù)據(jù)庫及表基本操作SQL概述SQL:StructuredQueryLanguage,結(jié)構(gòu)化查詢語言。其功能包括數(shù)據(jù)查詢、定義、操縱和控制等方面。SQL有SQL89、SQL92和SQL99多個(gè)版本,并向下兼容。注意:SQL是關(guān)系數(shù)據(jù)庫的標(biāo)準(zhǔn)語言,在語法上,不同的數(shù)據(jù)庫產(chǎn)品略有不同,MySQL的語法與其他工具差別較大。SQL組成數(shù)據(jù)庫存儲(chǔ)引擎:是數(shù)據(jù)庫底層軟件組織,是對(duì)數(shù)據(jù)庫文件的一種存取機(jī)制,為存儲(chǔ)的數(shù)據(jù)建立索引以及如何實(shí)現(xiàn)更新、查詢數(shù)據(jù)等技術(shù)的方法。存儲(chǔ)引擎為什么要使用不同的存儲(chǔ)引擎:現(xiàn)實(shí)生活中,由于不同業(yè)務(wù)產(chǎn)生了不同的數(shù)據(jù),這些數(shù)據(jù)有的可能偏重于被頻繁查詢,有的可能偏重于修改速度,有的則對(duì)事務(wù)、索引、外鍵有特殊規(guī)定。這樣一來,就對(duì)存儲(chǔ)數(shù)據(jù)要求使用不同的數(shù)據(jù)組織結(jié)構(gòu),使用不同的存儲(chǔ)引擎可以將數(shù)據(jù)以不同的結(jié)構(gòu)進(jìn)行存儲(chǔ)。查看MySQL支持的存儲(chǔ)引擎:

showengines存儲(chǔ)引擎存儲(chǔ)引擎的類型服務(wù)器是否支持該類型引擎注釋事務(wù)分布式交易處理的XA規(guī)范事務(wù)保存點(diǎn)通過系統(tǒng)變量default-storage-engine來查看存儲(chǔ)引擎,查看方式:showvariableslike‘default-storage-engine’;存儲(chǔ)引擎MySQL存儲(chǔ)引擎可在定義表的時(shí)候設(shè)置,也可以通過修改表的方式來設(shè)置。服務(wù)器在運(yùn)行期間可修改數(shù)據(jù)庫服務(wù)器默認(rèn)存儲(chǔ)引擎方式:setdefault-storage-engine=存儲(chǔ)引擎名;數(shù)據(jù)庫服務(wù)在啟動(dòng)時(shí)會(huì)讀取配置文件my.ini,配置文件中有默認(rèn)存儲(chǔ)引擎的設(shè)置。(C:\ProgramData\MySQL\MySQL

Server

8.0\my.ini)[mysqld]default-storage-engine=innodb字符集(Characterset):是字符的集合,是一套符號(hào)以及編碼規(guī)則,以二進(jìn)制形式存儲(chǔ)。常用的字符集如下表:字符集與字符編碼字符編碼:將字符變成字節(jié)的過程。在符號(hào)集合與數(shù)字系統(tǒng)之間建立對(duì)應(yīng)關(guān)系。與字符集相對(duì)應(yīng),不同的字符集有不同的字符編碼。解碼:將二進(jìn)制字節(jié)轉(zhuǎn)換成對(duì)應(yīng)字符的過程。字符集與字符編碼轉(zhuǎn)碼utf8gbk查看當(dāng)前MSQL支持的字符集及其默認(rèn)的排序方式:showcharset;/showcharacterset;使用系統(tǒng)變量查看當(dāng)前MySQL使用的字符集:showvariableslike'character%';字符集與字符編碼數(shù)據(jù)庫服務(wù)在啟動(dòng)時(shí)會(huì)讀取配置文件my.ini,配置文件中有默認(rèn)字符集的設(shè)置。[client]default-character-set=utf8[mysql]default-character-set=utf8[mysqld]character-set-server=utf8字符序:是指在同一字符集內(nèi)字符之間的比較規(guī)則。字符集與字符編碼如何比較兩個(gè)英文字符的大小?最簡(jiǎn)單的方式是比較兩個(gè)字符二進(jìn)制編碼的大小,如ASCII碼字符集中的’A’的編號(hào)為65,’a’的編碼為97。如何比較兩個(gè)漢字字符的大???UTF8中文采用康熙字典中定義的偏旁索引順序排序,GBK中文采用新華字典中定義的字母順序排序。二都可以轉(zhuǎn)碼。例:將student表的sname字段由utf8字符集轉(zhuǎn)為gbk排序。SELECT*FROMstudentORDERBYCONVERT(snameUSINGgbk);創(chuàng)建數(shù)據(jù)庫創(chuàng)建數(shù)據(jù)庫的語法格式CREATEDATABASE|SCHEMA[IFNOTEXISTS]db_name

[[DEFAULT]CHARACTERSETcharset_name][[DEFAULT]COLLATEcollation_name];MySQL數(shù)據(jù)庫管理創(chuàng)建數(shù)據(jù)庫命令早期數(shù)據(jù)庫稱謂待創(chuàng)建數(shù)據(jù)庫名已經(jīng)存在時(shí),給出錯(cuò)誤信息待創(chuàng)建數(shù)據(jù)庫名設(shè)置默認(rèn)字符集設(shè)置字符集默認(rèn)校對(duì)規(guī)則在創(chuàng)建數(shù)據(jù)庫時(shí)省略了字符集和校對(duì)規(guī)則的設(shè)置,MySQL將采用默認(rèn)字符集和默認(rèn)校對(duì)規(guī)則,默認(rèn)字符集是在哪里設(shè)置的?例4-1:創(chuàng)建名稱為mytest的數(shù)據(jù)庫,字符集和排序規(guī)則為采用系統(tǒng)默認(rèn)。CREATEDATABASEmytest;MySQL數(shù)據(jù)庫管理說明:創(chuàng)建數(shù)據(jù)庫后,會(huì)在存儲(chǔ)數(shù)據(jù)文件夾data下生成一個(gè)與數(shù)據(jù)庫同名的目錄,將來創(chuàng)建的表數(shù)據(jù)保存在此文件夾中。例:創(chuàng)建名稱為mytest的數(shù)據(jù)庫,字符集為utf8mb4和排序規(guī)則為采用系統(tǒng)默認(rèn)。CREATEDATABASEmytest1charsetutf8mb4;查看數(shù)據(jù)庫查看所有的數(shù)據(jù)庫SHOWDATABASES;查看某個(gè)數(shù)據(jù)庫SHOWCREATEDATABASEmytest;MySQL數(shù)據(jù)庫管理使用數(shù)據(jù)庫MySQL服務(wù)器中可以同時(shí)存在多個(gè)數(shù)據(jù)庫,在做數(shù)據(jù)處理前,需要切換到指定數(shù)據(jù)庫。語法如下:USE數(shù)據(jù)庫名;例:將mytest切換為當(dāng)前數(shù)據(jù)庫usemytest;MySQL數(shù)據(jù)庫管理修改數(shù)據(jù)庫更改數(shù)據(jù)庫的字符集和排序規(guī)則ALTERDATABASEdb_name

[[DEFAULT]CHARACTERSETcharset_name][[DEFAULT]COLLATEcollation_name];MySQL數(shù)據(jù)庫管理【例4-2】修改已建數(shù)據(jù)庫mytest1,將其字符集改為utf8。ALTERDATABASEmytest1CHARACTERSETutf8;刪除數(shù)據(jù)庫系統(tǒng)收回已創(chuàng)建數(shù)據(jù)庫所占用的存儲(chǔ)空間,清除其在數(shù)據(jù)字典中的定義,數(shù)據(jù)庫中所包含數(shù)據(jù)也將被清除。DROPDATABASE[IFEXISTS]數(shù)據(jù)庫名;【例4-3】刪除mytest數(shù)據(jù)庫,刪除前判斷數(shù)據(jù)庫是否存在。DROPDATABASEIFEXISTSmytest;MySQL數(shù)據(jù)庫管理數(shù)據(jù)類型:是指數(shù)據(jù)所代表信息的類型,不同的數(shù)據(jù)類型在使用范圍、存儲(chǔ)方式都不一樣。MySQL數(shù)據(jù)類型數(shù)字類型日期和時(shí)間類型字符型數(shù)據(jù)庫通用SET類型ENUM類型JSON數(shù)據(jù)類型MySQL使用(自學(xué))數(shù)字類型MySQL數(shù)據(jù)類型類型字節(jié)取值范圍(有符號(hào))取值范圍(無符號(hào))TINYINT1(-128,127)(0,255)SAMLLINT2(-32768,32767)(0,65535)MEDIUMINT3(-8388608,8388607)(0,16777215)INT4(-2147483648,2147483647)(0,4294967295)BIGINT8(-263,263-1)(0,264-1)DECIMAL[(P[,S])]如果P>S,為P+2字節(jié),否則為S+2字節(jié)和P、S的值有關(guān)和P、S的值有關(guān)關(guān)于數(shù)字類型的相關(guān)說明如下:MySQL數(shù)據(jù)類型(1)在選擇數(shù)據(jù)類型時(shí),若一個(gè)數(shù)據(jù)將來可能參與數(shù)學(xué)計(jì)算,推薦使用整數(shù)或定點(diǎn)數(shù)類型:若只用來顯示,則推薦使用字符串類型。例如,商品庫存保存為整數(shù)類型;用戶的身份證、電話號(hào)碼可以保存為字符串型。(2)表的主鍵推薦使用整數(shù)類型,與字符串相比,整數(shù)類型的處理效率更高,查詢速度更快。(3)定義無符號(hào)數(shù)據(jù)類型,需要在數(shù)據(jù)類型右邊加UNSIGNED關(guān)鍵字,例如INTUNSIGNED;字符型MySQL數(shù)據(jù)類型數(shù)據(jù)類型說明限制CHAR(n)固定長(zhǎng)度字符串0~255字符VARCHAR(n)可變長(zhǎng)度字符串與字符集相關(guān)TEXT長(zhǎng)文本數(shù)據(jù)0~28-1字符BLOB二進(jìn)制長(zhǎng)文本數(shù)據(jù)0~216-1字符關(guān)于字符類型的相關(guān)說明如下:MySQL數(shù)據(jù)類型(1)CHAR(n)存儲(chǔ)存儲(chǔ)大小為n個(gè)字符。如果實(shí)際輸入不足n個(gè)字符,系統(tǒng)會(huì)自動(dòng)在后面添加空格來填滿。(2)VARCHAR(n)存儲(chǔ)大小為輸入數(shù)據(jù)的字符的實(shí)際長(zhǎng)度,其存儲(chǔ)的最大長(zhǎng)度取決于字符集,gbk和utf8對(duì)應(yīng)的最大值分別為32766和21488。(3)BLOB類型用于保存數(shù)據(jù)量較大的二進(jìn)制數(shù)據(jù),如圖片、PDF文檔等,BLOB與TEXT類型的主要區(qū)別為:BLOB類型根據(jù)二進(jìn)制數(shù)據(jù)進(jìn)行比較與排序,區(qū)分字符大小寫;TEXT類型根據(jù)字符進(jìn)行比較與排序,不區(qū)分字符大小寫。日期和時(shí)間類型MySQL數(shù)據(jù)類型類型字節(jié)取值范圍格式Y(jié)EAR11901到2155YYYYTIME3-838:59到838:59:59HH:MM:SSDATE31000-01-01到9999-12-31YYYY-MM-DDDATETIME81000-01-0100:00:00到9999-12-3123:59:59YYYY-MM-DDHH:MM:SSTIMESTAMP41970-01-0100:00:00到2038-01-1903:14:07YYYY-MM-DDHH:MM:SS關(guān)于日期時(shí)間類型的相關(guān)說明如下:MySQL數(shù)據(jù)類型(1)在輸入YEAR類型的值時(shí),既可以使用四位字符和數(shù)字,也可以使用2位字符和數(shù)字。使用兩位字符表示為'00'~'99',其中,'00'~'69'會(huì)被轉(zhuǎn)化為2000~2069,'70'~'99'的值會(huì)被轉(zhuǎn)換為1970~1999。(2)日期型DATE的常量有多種表示方式:'20221025'、'2022-10-25'、'22-10-25'、'221025'都表示2022年10月25日。日期型的變量CURRENT_DATE返回系統(tǒng)當(dāng)前日期,日期函數(shù)NOW()返回系統(tǒng)當(dāng)前日期和日間。(3)時(shí)間型的常量以'HHMMSS'或HHMMSS格式表示,如輸入'121314'或121314都表示12:13:14(12小時(shí)13分14秒)。時(shí)間型的變量CURRENT_TIME返回系統(tǒng)當(dāng)前時(shí)間。創(chuàng)建數(shù)據(jù)表在已存在的數(shù)據(jù)庫中建立新表語法格式:CREATETABLE[IFNOTEXISTS]<表名>(<字段名>

<字段類型>[字段屬性]…[索引定義]);MySQL數(shù)據(jù)表管理【例4-5】在teaching_manage數(shù)據(jù)庫中創(chuàng)建一個(gè)名稱為student的數(shù)據(jù)表,保存學(xué)生信息。

CREATETABLEIFNOTEXISTSstudent( snoCHAR(6)PRIMARYKEYCOMMENT'學(xué)生編號(hào)’,

snameVARCHAR(20)NOTNULL,

deptVARCHAR(20), sexCHAR(1), birthdayDATE,

totalcreditDECIMAL(4,1)DEFAULT0, remarksVARCHAR(100) );MySQL數(shù)據(jù)表管理【例4-6】在teaching_manage數(shù)據(jù)庫中創(chuàng)建一個(gè)名稱為course的數(shù)據(jù)表,保存課程信息。CREATETABLEcourse( cnoCHAR(3)PRIMARYKEY

cnameVARCHAR(30)NOTNULLUNIQUE termTINYINT,

ctimeTINYINTUNSIGNED, creditDECIMAL(3,1));MySQL數(shù)據(jù)表管理【例4-7】在teaching_manage數(shù)據(jù)庫中創(chuàng)建一個(gè)名稱為score的數(shù)據(jù)表,保存成績(jī)信息。CREATETABLEscore( score_idINTUNSIGNEDAUTO_INCREMENTsnoCHAR(6),

cnoCHAR(3), gradeDECIMAL(4,1)CHECK(grade>=0) PRIMARYKEY(score_id),CONSTRAINTfk_score_snoFOREIGNKEY(sno)REFERENCESstudent(sno),CONSTRAINTfk_score_cnoFOREIGNKEY(cno)REFERENCEScourse(cno));MySQL數(shù)據(jù)表管理【例4-8】在teaching_manage數(shù)據(jù)庫中利用score創(chuàng)建一個(gè)名稱為sc的數(shù)據(jù)表,保存成績(jī)信息。CREATETABLEscASSELECT*FROMscore;MySQL數(shù)據(jù)表管理注意:使用CREATETABLE+子查詢方式創(chuàng)建表,只復(fù)制表結(jié)構(gòu)和內(nèi)容,原表中的約束和索引通常不會(huì)被復(fù)制。數(shù)據(jù)庫的完整性約束完整性約束名定義關(guān)鍵字約束規(guī)則違約處理實(shí)體完整性約束primarykey主鍵不能取重復(fù)值和空值拒絕執(zhí)行參照完整性約束foreignkey外鍵的值依賴主鍵的值或?yàn)榭罩稻芙^/級(jí)聯(lián)刪除/級(jí)聯(lián)更新/置為空值用戶自定義完整性約束check滿足表達(dá)式的值拒絕執(zhí)行非空約束not

null不能取空值拒絕執(zhí)行唯一性約束unique不能有重復(fù)值拒絕執(zhí)行默認(rèn)值約束default不指定值時(shí)取默認(rèn)值拒絕執(zhí)行數(shù)據(jù)庫的完整性是指保證數(shù)據(jù)庫中數(shù)據(jù)的正確性、準(zhǔn)確性和有效性,通過定義防止不合語義的數(shù)據(jù)進(jìn)入數(shù)據(jù)庫。查看數(shù)據(jù)表1.查看庫中數(shù)據(jù)表SHOWTABLES[LIKE匹配模式];--查看當(dāng)前數(shù)據(jù)庫中所有數(shù)據(jù)表

SHOWTABLES;--查看當(dāng)前數(shù)據(jù)庫中以'sc'開頭的數(shù)據(jù)表SHOWTABLESLIKE'sc%';MySQL數(shù)據(jù)表管理2.查看數(shù)據(jù)表的詳細(xì)信息SHOWTABLESTATUS[FROM數(shù)據(jù)庫名][LIKE匹配模式];--查看當(dāng)前數(shù)據(jù)庫中所有數(shù)據(jù)表的詳細(xì)信息

SHOWTABLESTATUS;--查看teaching_manage數(shù)據(jù)庫中所有數(shù)據(jù)表的詳細(xì)信息SHOWTABLESTATUSFROMteaching_manage;MySQL數(shù)據(jù)表管理3.查看表結(jié)構(gòu)DESC<數(shù)據(jù)表名>[字段名];SHOWCOLUMNSFROM<數(shù)據(jù)表名>;--查看當(dāng)前數(shù)據(jù)庫中student表的結(jié)構(gòu)

DESCstudent;SHOWCOLUMNSFROMstudent;--查看當(dāng)前數(shù)據(jù)庫中student表中sname字段的結(jié)構(gòu)DESCstudentsname;MySQL數(shù)據(jù)表管理4.查看表的創(chuàng)建語句SHOWCREATETABLE<數(shù)據(jù)表名>;--查看當(dāng)前數(shù)據(jù)庫中student表的創(chuàng)建語句

SHOWCREATETABLEstudent;MySQL數(shù)據(jù)表管理修改數(shù)據(jù)表1.修改數(shù)據(jù)表名稱ALTERTABLE<原數(shù)據(jù)表名>RENAME[TO|AS]<新數(shù)據(jù)表名>;RENAMETABLE<原數(shù)據(jù)表名>TO<新數(shù)據(jù)表名>;--修改數(shù)據(jù)表student為student1ALTERTABLEstudentRENAMETOstudent1;--修改數(shù)據(jù)表student1為studentRENAMETABLEstudent1TOstudent;MySQL數(shù)據(jù)表管理2.修改數(shù)據(jù)表選項(xiàng)ALTERTABLE<數(shù)據(jù)表名><表選項(xiàng)>[=]<表選項(xiàng)>;--修改數(shù)據(jù)表student的字符集為utf8ALTERTABLEstudentCHARSET=utf8;MySQL數(shù)據(jù)表管理修改表結(jié)構(gòu)1.新增字段ALTERTABLE<數(shù)據(jù)表名>ADD[COLUMN]<字段名類型>[FIRST|AFTER字段名];--修改數(shù)據(jù)表student增加1個(gè)新列nativeplace

ALTERTABLEstudentADDCOLUMNnativeplaceVARCHAR(50);--修改數(shù)據(jù)表student在性別(sex)增加1個(gè)新列nativeplace

ALTERTABLEstudentADDnativeplaceVARCHAR(50)AFTERsex;MySQL數(shù)據(jù)表管理2.修改字段(1)修改字段名ALTERTABLE<數(shù)據(jù)表名>CHANGE<舊字段名><新字段名類型>--修改數(shù)據(jù)表student將nativeplace

改名為nativeALTERTABLEstudentCHANGEnativeplacenativeVARCHAR(50);MySQL數(shù)據(jù)表管理(2)修改字段類型和位置ALTERTABLE<數(shù)據(jù)表名>MODIFY<字段名類型>[FIRST|AFTER字段名2]--修改數(shù)據(jù)表student將nativeplace

類型改為VARCHAR(30)ALTERTABLEstudentMODIFYnativeplaceVARCHAR(30);--修改數(shù)據(jù)表student將nativeplace

類型改為VARCHAR(20),并放在birthday之后ALTERTABLEstudentMODIFYnativeplaceVARCHAR(20)AFTERbirthday;MySQL數(shù)據(jù)表管理3.刪除字段ALTERTABLE<數(shù)據(jù)表名>DROP[COLUMN]<字段名>;--修改數(shù)據(jù)表student刪除列nativeplace

ALTERTABLEstudentDROPnativeplace;MySQL數(shù)據(jù)表管理4.添加和刪除約束ALTERTABLE<數(shù)據(jù)表名>[ADDCONSTRAINT<完整性約束名><完整性約束>][DROPCONSTRAINT<完整性約束名>]--修改數(shù)據(jù)表score,在sno、cno兩字段上添加唯一約束uk_sno_cno

ALTERTABLEscoreADDCONSTRAINTuk_sno_cnoUNIQUE(sno,cno);MySQL數(shù)據(jù)表管理刪除數(shù)據(jù)表DROPTABLE<數(shù)據(jù)表名>;--刪除學(xué)生表DROPTABLEstudent;表被刪除后,表在數(shù)據(jù)字典中的定義也被刪除,此表上建立的索引和視圖也被自動(dòng)刪除。MySQL數(shù)據(jù)表管理SQL提供了數(shù)據(jù)更新功能INSERT插入DELETE刪除UPDATE更新數(shù)據(jù)表的數(shù)據(jù)操作插入數(shù)據(jù)1.插入單個(gè)記錄語句格式

INSERT INTO<表名>[(<屬性列1>[,<屬性列2>…)] VALUES(<常量1>[,<常量2>]…)數(shù)據(jù)表的數(shù)據(jù)操作注意:

(1)INTO子句屬性列的順序可與表定義中的順序不一致

(2)VALUES子句提供的值必須與INTO子句匹配1.插入單個(gè)記錄--向student表中插入一條記錄,所有字段都有值INSERTINTOstudentVALUES('001242','張青','計(jì)算機(jī)','女','04-01-22',50,'三好生');--向student表中插入一條記錄,部分字段有值INSERTINTOstudent(sno,sname,dept)VALUES('001243','李四','計(jì)算機(jī)');數(shù)據(jù)表的數(shù)據(jù)操作2.插入多個(gè)記錄INSERT[INTO]<表名>[(字段名,…)][AS]子查詢--向stu表中一次插入多條記錄INSERTINTOstuSELECTsno,sname,sex,deptFROMstudent;數(shù)據(jù)表的數(shù)據(jù)操作修改數(shù)據(jù)UPDATE<表名>SET列名={表達(dá)式|(子查詢)}[,…][WHERE<條件表達(dá)式>];注意:

(1)如果不選WHERE子句,則表中所有的行全被更新;

(2)如果選擇了WHERE子句,則使WHERE中條件表達(dá)式為真的行被更新。數(shù)據(jù)表的數(shù)據(jù)操作【例4-9】把student表中的總學(xué)分加10。UPDATEstudentSETtotalcredit=totalcredit+10;【例4-10】把student表中姓名為“羅林琳”的學(xué)生的專業(yè)改為“計(jì)算機(jī)”,備注改為“三好學(xué)生”。UPDATEstudentSETdept='計(jì)算機(jī)',remarks='三好學(xué)生'WHEREsname='羅林琳';數(shù)據(jù)表的數(shù)據(jù)操作刪除數(shù)據(jù)DELETEFROM<表名>[WHERE<條件表達(dá)式>];WHERE子句指定要?jiǎng)h除的元組缺省表示要?jiǎng)h除表中的全部元組,表的定義仍在字典中數(shù)據(jù)表的數(shù)據(jù)操作TRUNCATETABLE語句截?cái)嗷颈恚瑥谋碇袆h除所有的行,并且釋放該表所使用的存儲(chǔ)空間。在使用TRUNCATETABLE語句時(shí),不能回退已刪除的行?!纠?-13】將表STUDENT刪除,并釋放其存儲(chǔ)空間。TRUNCATETABLESTUDENT;數(shù)據(jù)表的數(shù)據(jù)操作為什么要定義自增型的字段?自增型字段(1)業(yè)務(wù)需求(2)空間效率:相同長(zhǎng)度的字符串和數(shù)值所能表示的范圍有較大差別。

如4個(gè)字節(jié)的數(shù)值型字符所表示的范圍為:‘0000’—‘9999’共10000種不同的值,而4個(gè)字節(jié)的int類型所能表示的范圍為:0——232-1共42億種不同的值。(3)時(shí)間效率:相同長(zhǎng)度的字符串和數(shù)值進(jìn)行比較時(shí),數(shù)值的比較速度要高于字符的比較速度。AUTO_INCREMENT類型AUTO_INCREMENT定義自增長(zhǎng)字段,查看參數(shù)下:SHOWVARIABLESLIKE'auto_increment%';自增型字段參數(shù)名稱默認(rèn)值取值范圍作用auto_increment_increment11~65535控制增量的幅度。auto_increment_offset11~65535增量開始的位置(開始的偏移量)。--設(shè)置AUTO_INCREMENT類型的初始值為2SET@@auto_increment_offset=2;--設(shè)置AUTO_INCREMENT類型的增量為2SET@@auto_increment_increment=2;自增型字段的數(shù)據(jù)插入AUTO_INCREMENT類型定義的字段默認(rèn)值和步長(zhǎng)均為1,每插入一條記錄,該字

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論