你的數(shù)據(jù)庫表可以定義為數(shù)字自動(dòng)遞增的主鍵,MySQL將采取照顧其獨(dú)特的價(jià)值,同時(shí)插入新行。

目前創(chuàng)新互聯(lián)公司已為1000多家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)絡(luò)空間、網(wǎng)站托管、服務(wù)器托管、企業(yè)網(wǎng)站設(shè)計(jì)、蘿北網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
每次添加一個(gè)新行,MySQL的增量值自動(dòng),它堅(jiān)持以表。但有時(shí)你可能需要重置AUTOINCREMENT列值1。說你寫一個(gè)示例應(yīng)用程序,你已經(jīng)有幾行插入表中。現(xiàn)在要?jiǎng)h除這些行,并自動(dòng)增量列復(fù)位,使新行插入將有主鍵的值1 1。
有幾個(gè)方法來實(shí)現(xiàn)這一點(diǎn)。
1。直接復(fù)位自動(dòng)增量值
ALTER TABLE語法提供了一種方法來重新設(shè)置自動(dòng)增量列。采取看看下面的例子。
ALTER TABLE table_name AUTO_INCREMENT = 1;
請注意,你不能重置計(jì)數(shù)器的值小于或等于任何已使用的。對于MyISAM,如果該值小于或等于目前在AUTO_INCREMENT列的最大值,該值是目前最大的加一復(fù)位。對于InnoDB,如果該值大于當(dāng)前列中的最大值,沒有出現(xiàn)錯(cuò)誤和不改變當(dāng)前序列值。
2。截?cái)啾斫財(cái)啾碜詣?dòng)增量值自動(dòng)復(fù)位為0。
TRUNCATE TABLE table_name;
謹(jǐn)慎使用。用于截?cái)鄷r(shí),任何的AUTO_INCREMENT計(jì)數(shù)器復(fù)位到零。從MySQL 5.0.13上,AUTO_INCREMENT計(jì)數(shù)器復(fù)位為零的TRUNCATE TABLE,而不管是否有一個(gè)外鍵約束。
一旦發(fā)射TRUNCATE是,表處理不記得過去使用的AUTO_INCREMENT值,但從頭開始計(jì)數(shù)。這是真實(shí)的,甚至對于MyISAM和InnoDB,通常不重用序列值。
3。下降和重新創(chuàng)建表
這是另一種方式下重啟自動(dòng)增量指數(shù)。雖然不是很理想。
DROP TABLE table_name;
所有這些技術(shù)的價(jià)值技術(shù)重置自動(dòng)增量列數(shù)。使用任何適合你的要求。
截?cái)啾硎且粭lSQL語句:truncate
table
表名,其含義是快速將表中所有數(shù)據(jù)刪除,與delete語句不同之處在于,truncate語句不會(huì)寫日志,所以速度極快,尤其適合清空存有海量數(shù)據(jù)的表格,而delete語句雖然也能將表中的數(shù)據(jù)刪除,但刪除的過程會(huì)計(jì)入日志,速度較慢。
但delete語句可以有選擇的刪除表中的數(shù)據(jù),而truncate語句只能清空表中的所有數(shù)據(jù),可以根據(jù)自己的需要選用。
show tables 是管理語句,不能作為標(biāo)準(zhǔn)sql語句使用在子語句場合。
可以直接查系統(tǒng)的字典表來進(jìn)行:
select right(table_name, 5) from information_schema.tables where table_name like '%usermeta';
# information_schema 是系統(tǒng)字典所在的數(shù)據(jù)庫,其中的tables表記錄了數(shù)據(jù)庫的所有表。
# desc information_schema.tables; #有很多你想知道的信息了。
刪除表數(shù)據(jù)有兩種方法:delete和truncate。具體語句如下:
一、RUNCATE TABLE name? :
刪除表中的所有行,而不記錄單個(gè)行刪除操作。?在這個(gè)指令之下,表格中的資料會(huì)完全消失,可是表格本身會(huì)繼續(xù)存在。
TRUNCATE TABLE 的語法:TRUNCATE TABLE name ,參數(shù) name 是要截?cái)嗟谋淼拿Q或要?jiǎng)h除其全部行的表的名稱。
二、Delete from tablename where 1=1
1、delete語法:
DELETE FROM 表名稱 WHERE 列名稱 = 值。
2、刪除所有行:
可以在不刪除表的情況下刪除所有的行。這意味著表的結(jié)構(gòu)、屬性和索引都是完整的:DELETE FROM table_name。
MySQL中截?cái)啾硪詫uto_increment值設(shè)置為從1開始。
讓我們首先創(chuàng)建一個(gè)表-mysqlcreatetableDemoTable(StudentIdintNOTNULAUTO_INCREMENTPRIMARYKEY)。
使用插入命令在表中插入一些記錄-mysqlinsertintoDemoTablevalues();mysqlinsertintoDemoTablevalues();mysqlinsertintoDemoTablevalues();mysqlinsertintoDemoTablevalues()。
使用select語句顯示表中的所有記錄-mysqlselect*fromDemoTable。
當(dāng)前文章:mysql截?cái)啾碓趺词褂?截?cái)啾砗颓蹇毡?/a>
本文來源:http://chinadenli.net/article26/dsepdjg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、虛擬主機(jī)、網(wǎng)站營銷、企業(yè)網(wǎng)站制作、ChatGPT、營銷型網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)