国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院

首頁 > 數據庫 > MySQL > 正文

與MSSQL對比學習MYSQL的心得(八)--插入 更新 刪除

2020-01-18 23:08:55
字體:
來源:轉載
供稿:網友

同樣的,只會講解跟SQLSERVER不同的地方

插入

將多行查詢結果插入到表中

語法

INSERT INTO table_name1(column_list1) SELECT (column_list2) FROM table_name2 WHERE (condition)

INSERT INTO SELECT 在SQLSERVER里也是支持的

table_name1指定待插入數據的表;column_list1指定待插入表中要插入數據的哪些列;table_name2指定插入數據是從

哪個表中查詢出來的;column_list2指定數據來源表的查詢列,該列表必須和column_list1列表中的字段個數相同,數據類型相同;

condition指定SELECT語句的查詢條件

從person_old表中查詢所有的記錄,并將其插入到person表

CREATE TABLE person ( id INT UNSIGNED NOT NULL AUTO_INCREMENT, NAME CHAR(40) NOT NULL DEFAULT '', age INT NOT NULL DEFAULT 0, info CHAR(50) NULL, PRIMARY KEY (id))CREATE TABLE person_old ( id INT UNSIGNED NOT NULL AUTO_INCREMENT, NAME CHAR(40) NOT NULL DEFAULT '', age INT NOT NULL DEFAULT 0, info CHAR(50) NULL, PRIMARY KEY (id))INSERT INTO person_oldVALUES (11,'Harry',20,'student'),(12,'Beckham',31,'police')SELECT * FROM person_old

 可以看到,插入記錄成功,person_old表現在有兩條記錄。接下來將person_oldperson_old表中的所有記錄插入到person表

INSERT INTO person(id,NAME,age,info)SELECT id,NAME,age,info FROM person_old;SELECT * FROM person 

可以看到數據轉移成功,這里的id字段為自增的主鍵,在插入時要保證該字段值的唯一性,如果不能確定,可以插入的時候忽略該字段,

只插入其他字段的值

如果再執行一次就會出錯

MYSQL和SQLSERVER的區別:

區別一

當要導入的數據中有重復值的時候,MYSQL會有三種方案

方案一:使用 ignore 關鍵字
方案二:使用 replace into
方案三:ON DUPLICATE KEY UPDATE

第二和第三種方案這里不作介紹,因為比較復雜,而且不符合要求,這里只講第一種方案

TRUNCATE TABLE personTRUNCATE TABLE persona_old INSERT INTO person_oldVALUES (11,'Harry',20,'student'),(12,'Beckham',31,'police')##注意下面這條insert語句是沒有ignore關鍵字的INSERT INTO person(id,NAME,age,info)SELECT id,NAME,age,info FROM person_old;INSERT INTO person_old VALUES (13,'kay',26,'student')##注意下面這條insert語句是有ignore關鍵字的INSERT IGNORE INTO person(id,NAME,age,info)SELECT id,NAME,age,info FROM person_old;

 

可以看到插入成功

SQLSERVER

在SQLSERVER這邊,如果要忽略重復鍵,需要在建表的時候指定 WITH (IGNORE_DUP_KEY = ON) ON [PRIMARY]

這樣在插入重復值的時候,SQLSERVER第一次會保留值,第二次發現有重復值的時候,SQLSERVER就會忽略掉

區別二

插入自增列時的區別

SQLSERVER需要使用 SET IDENTITY_INSERT 表名 ON 才能把自增字段的值插入到表中,如果不加 SET IDENTITY_INSERT 表名 ON

則在插入數據到表中時,不能指定自增字段的值,則id字段不能指定值,SQLSERVER會自動幫你自動增加一

INSERTINTO person(NAME,age,info) VALUES ('feicy',33,'student')

而MYSQL則不需要,而且自由度非常大

你可以將id字段的值指定為NULL,MYSQL會自動幫你增一

INSERTINTO person(id,NAME,age,info) VALUES (NULL,'feicy',33,'student')

 


也可以指定值

INSERT IGNORE INTO person(id,NAME,age,info) VALUES (16,'tom',88,'student')

也可以不寫id的值,MYSQL會自動幫你增一

INSERT IGNORE INTO person(NAME,age,info) VALUES ('amy',12,'bb')

你可以指定id字段的值也可以不指定,指定的時候只要當前id字段列沒有你正在插入的那個值就可以,即沒有重復值就可以

自由度非常大,而且無須指定 SET IDENTITY_INSERT 表名 ON 選項

區別三

唯一索引的NULL值重復問題

MYSQL

在MYSQL中UNIQUE 索引將會對null字段失效

insert into test(a) values(null) insert into test(a) values(null)

 
上面的插入語句是可以重復插入的(聯合唯一索引也一樣)

SQLSERVER

SQLSERVER則不行

CREATE TABLE person ( id INT NOT NULL IDENTITY(1,1), NAME CHAR(40) NULL DEFAULT '', age INT NOT NULL DEFAULT 0, info CHAR(50) NULL, PRIMARY KEY (id))CREATE UNIQUE INDEX IX_person_unique ON [dbo].[person](name)INSERT INTO [dbo].[person]    ( [NAME], [age], [info] )VALUES ( NULL, -- NAME - char(40)     1, -- age - int     'aa' -- info - char(50)     ),     ( NULL, -- NAME - char(40)     2, -- age - int     'bb' -- info - char(50)     )
消息 2601,級別 14,狀態 1,第 1 行不能在具有唯一索引“IX_person_unique”的對象“dbo.person”中插入重復鍵的行。重復鍵值為 (<NULL>)。語句已終止。

 
更新

更新比較簡單,就不多說了

UPDATE person SET info ='police' WHERE id BETWEEN 14 AND 17SELECT * FROM person

刪除

刪除person表中一定范圍的數據

DELETE FROM person WHERE id BETWEEN 14 AND 17SELECT * FROM person

如果要刪除表的所有記錄可以使用下面的兩種方法

##方法一
DELETE     FROM person

##方法二
TRUNCATE TABLE  person
跟SQLSERVER一樣,TRUNCATE TABLE會比DELETE FROM TABLE 快

MYISAM引擎下的測試結果,30行記錄

 
跟SQLSERVER一樣,執行完TRUNCATE TABLE后,自增字段重新從一開始。

################################INSERT IGNORE INTO person(id,NAME,age,info)SELECT id,NAME,age,info FROM person_old;SELECT * FROM personTRUNCATE TABLE personINSERT IGNORE INTO person(NAME,age,info) VALUES ('amy',12,'bb')SELECT * FROM person

當你剛剛truncate了表之后執行下面語句就會看到重新從一開始

SHOW TABLE STATUS LIKE 'person'

總結

這一節介紹了MYSQL里的的插入、更新和刪除,并且比較了與SQLSERVER的區別,特別是MYSQL里插入語句的靈活性

剛剛開始從SQLSERVER轉過來可能會有一些不適應

如有不對的地方,歡迎大家拍磚o(∩_∩)o

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院
国产欧美日韩专区| 黄色一级视频网站| 狠狠操视频网站| 青青草原av在线| 超碰免费在线播放| 天天操人人爽| 91国内精品在线视频| a视频在线看| 国产在线一二三区| 中文字幕视频免费在线观看| 国产黄色av免费看| 免费女人毛片视频| 国产羞羞视频| 先锋av资源网| 中文字幕国产欧美| 天天草天天操| 国产婷婷视频在线| 亚洲精品xxxxx| 国产网站av| 六月天色婷婷| 国产99在线|亚洲| sese在线视频| 18av在线视频| 国产性色视频| 久久五月精品| 伊人影院在线观看| 国产一二区视频| 福利在线视频导航| 亚洲国产aⅴ精品| 国产高潮又爽又无遮挡又免费| 青青草免费在线视频| 国产视频xxxx| 久艹在线视频| av在线二区| 在线黄色国产电影| 992tv在线观看在线播放| 最新国产在线| 天堂资源在线中文| 超碰在线免费播放| www.91在线播放| 亚洲网站一区| a视频在线播放| 午夜在线视频播放| 亚洲欧美精品日韩欧美| 精品入口蜜桃| 国产爆初菊在线观看免费视频网站| 午夜av电影| 国产亚洲精品午夜高清影院| 中文字幕中文字幕在线中高清免费版 | baoyu777.永久免费视频| 国产激情在线观看| 国产精品国产三级国产试看| 国产色婷婷在线| 精品国内自产拍在线视频| 精品视频二区三区| jizz性欧美| 中文字幕高清av| a√在线视频| 日本一二区视频| 黄色免费av| 国产精品伦一区二区三区视频 | 青青草观看免费视频在线| 久热精品视频在线播放| 二人午夜免费观看在线视频| 好吊日视频在线观看| 国产视频精选在线| 亚洲男人的天堂成人| 国产精品一区二区资源| av福利在线播放| 国产美女福利在线观看| 69精品视频| 爱福利在线视频| 91超碰在线免费| 夜夜嗨yeyeh| 中文字幕第一页在线| 亚洲91av| 国产www.大片在线| 国产久草在线| eeuss影院网站免费观看| 国产三区在线观看| 久久精品最新免费国产成人| 国产porny蝌蚪视频| 狠狠插狠狠操| 天堂网中文在线| 精品推荐蜜桃传媒| 综合激情丁香| 久精品在线观看| 国产精品入口麻豆完整版| 日本一级理论片在线大全| 国产精品剧情一区二区在线观看| 欧美日韩视频精品一区二区| 91国内精品久久久久| √天堂资源地址在线官网| 免费看ww视频网站入口| 中文字幕av高清在线观看| 国产网红女主播精品视频| 丁香婷婷在线| 国产精品天堂| 中文字幕视频在线| 国产精品久久久久久福利| 国产丝袜自拍| 精品国产免费第一区二区| 天堂在线中文| 国产一级大片| 国产精品久久精品牛牛影视| 国产福利小视频在线| 2019中文字幕在线电影免费| 国产不卡一卡2卡三卡4卡5卡在线| 国产精品178页| 依依成人在线| 九九99精品| 国产精品久久一区二区三区不卡| 国产黄色高清在线| 在线午夜视频| 九九久久久2| 国产日本视频| 亚洲精品少妇久久久久久| av麻豆国产| 免费国产阿v视频在线观看| 丁香花高清在线观看完整版 | 国产系列在线观看| 国产福利在线看| 波多野结衣中文字幕久久| 国产九九九九| 国产xxx在线| www狠狠操| 五月天天在线| 在线黄色.com| 最近中文字幕大全中文字幕免费| 国产香蕉在线| 一本大道久久精品| 九九在线视频| a√在线视频| 99热在线免费观看| www.国产精| 精品视频vs精品视频| 国产女王在线**视频| 亚洲夜夜综合| 尤物视频在线看| 日本在线视频www鲁啊鲁| 国产婷婷视频在线| 狠狠操视频网站| 日本成人a视频| 99在线视频观看| 国产有码在线| 亚洲综合在线不卡| 国产黄色高清在线| 国产亚洲精品久久久久久移动网络| а√最新版地址在线天堂| 91在线网址| 精品视频一区二区观看| 国产福利在线免费观看| 国产精品一区二区婷婷| 美女被人操视频在线观看| 在线a人片免费观看视频| 国产高清视频免费最新在线| 五月婷婷开心综合| 91av久久| 国产区成人精品视频| 五月综合网站| 国产图片综合| 国产wwww| 亚洲欧美日韩一区成人| 99在线视频影院| 亚洲精品aaaa| 久精品在线观看| 日本最新在线视频| 国产高清免费av在线| 99re热视频在线| av资源网站在线观看| 久久国产热视频| 天堂资源最新版在线视频观看免费网| 就爱干草视频| 国产污污在线观看| 国产系列在线观看| 国产成人综合亚洲欧美在| 精品网站www| 久久精品蜜桃| 2019中文字幕视频| 欧美婷婷久久五月精品三区| 国产农村一级特黄α**毛片 | 国产视频1区| 96精品视频| 欧美色欧美亚洲另类二区精品| 久久亚洲天堂| 国产一二三区在线| av免费在线免费| 欧美视频免费一区二区三区| 99色在线视频| www.中文字幕久久久| 国产亚洲精品拍拍拍拍拍| 亚洲视频在线观看不卡| 国产免费福利网站| 在线视频三级| 国产小视频在线观看| h网站久久久| 69久久久久| 国产裸舞福利在线视频合集| 在线播放www| 国产精品jvid在线观看|