欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Mysql數(shù)據(jù)庫值的添加、修改、刪除及清空操作實例

 更新時間:2021年06月20日 10:35:55   作者:TY__F  
這篇文章主要給大家介紹了關(guān)于Mysql數(shù)據(jù)庫值的添加、修改、刪除及清空操作的相關(guān)資料,文中通過示例代碼以及圖文介紹的非常詳細(xì),需要的朋友可以參考下

3、MySQL數(shù)據(jù)管理

第一種方式:不太建議,看起來復(fù)雜些

-- 學(xué)生表的 gradeid 字段,要去引用 年級表的 gradeid
-- 定義外鍵key
-- 給這個外鍵添加約束,(執(zhí)行引用),REFERENCES 引用
key `FK_gradeid`(`gradeid`)
CONSTRAINT `FK_gradeid` FOREIGN KEY (`gradeid`) REFERENCES `grade`(`gradeid`)

第二種方式:建議

-- 創(chuàng)建表成功后,添加外鍵約束
-- 創(chuàng)建表的時候沒有外鍵關(guān)系
ALTER TABLE `student`
ADD CONSTRAINT `FK_gradeid` FOREIGN KEY(`gradeid`) REFERENCES `grade`(`gradeid`);
-- ALTER TABLE 表 ADD CONSTRAINT `` FOREIGN KEY (``) REFERENCES `字段`

以上的操作都是物理外鍵,數(shù)據(jù)庫級別的外鍵,我們不建議使用,(避免數(shù)據(jù)庫過多造成困擾,這里了解即可)

最佳實踐

  • 數(shù)據(jù)庫為單純的表
  • 我們想使用多張的表數(shù)據(jù),想使用外鍵(程序去實現(xiàn))

3.2、DML語言

數(shù)據(jù)庫語言: 數(shù)據(jù)存儲、數(shù)據(jù)管理

3.3、添加 INSERT

-- 插入語句
INSERT INTO 表名([字段1,字段2,字段2])
values(''),(''),('')

-- INSERT INTO 'grade'('gradename') VALUES ('大四')
-- 一般寫插入語句,一定要數(shù)據(jù)和要插入值的字段一一對應(yīng)
-- 給某個字段添加多個字段
INSERT INTO `表明`(`屬性列字段`, ...) 
VALUES ('匹配的值1','匹配的值2','匹配的值3')
/*
如果不想寫屬性列的字段名,那么就吧每個屬性列完全匹配,一一對應(yīng)的寫出后面的值*/

注意事項

  • 字段和字段之間使用英文逗號隔開
  • 字段是可以省略的,但是后面的值必須要一一對應(yīng),不能少
  • 可以同時插入多條數(shù)據(jù),VALUES 后面的值,需要使用,隔開即可VALUSE(),(),......
-- 插入多條數(shù)據(jù)<即元組>,多個行的數(shù)據(jù)
INSERT INTO `s`(`SNO`,`SNAME`,`SEX`,`Sage`) VALUES ('180109','王五','男','76'),('180108','李四','男','88')

3.3修改

update 修改誰(條件)

-- 修改學(xué)員名字
UPDATE `student` SET `name`='長江七號' WHERE  id = 1; -- 有條件
-- 不指定的情況下,會改動所有表?。。。?!
UPDATE `student` SET `name` = '長江七號'
-- 語法
-- UPDATE 表名 SET colum_name = value,[colum_name = value,....] where [條件]

條件:where 運(yùn)算符


操作符 含義 范圍 結(jié)果
= 等于 5=6 false
<>或者 != 不等于 5<>6 true
> 大于 5>6 false
< 小于 5<6 true
>= 大于等于 5>=6 false
<= 小于等于 5<=6 true
between A and B 在A和B之間 between 1 and 10 在1~10之間,不包括10
AND 連接條件&& 條件1 和條件2都成立 都是true 才是true
OR 或者|| 條件1 和條件2有一個成立即可 有一個true才是true

注意事項:

  • colnum_name 是數(shù)據(jù)庫的列,盡量帶上 ``
  • 條件,篩選的條件,如果沒有指定,則會修改所有的列
  • VLAUE是一個具體的值,也可以是一個變量,如birthday = CURRENT_TIME current_time是當(dāng)前時間
  • 多個設(shè)置的屬性之間,使用英文逗號隔開
-- 修改語句的例子
UPDATE `student`SET `birthday` = CURRENT_TIME WHERE `name` = '長江七號' AND  SEX = '女'

3.4 刪除

delete 命令

語法:delete from 表明 where 判斷條件

-- 刪除數(shù)據(jù)<慎用,容易刪庫跑路>
DELETE FROM `STUDENT`

-- 刪除指定數(shù)據(jù)
DELETE FROM `student` WHERE id = 1;

TRUNCATE 命令

作用:完全清空一個數(shù)據(jù)庫表,表的結(jié)構(gòu)和索引約束不會改變!!

-- 清空數(shù)據(jù)表,例如清空student表
TRUNCATE `student`
-- 安全寫法,刪除表,防止刪除數(shù)據(jù)庫名為`student`
TRUNCATE TABLE `student`

delete 和TRUNCATE的區(qū)別

相同點:都可以刪除數(shù)據(jù),都不會刪除表的結(jié)構(gòu)

不同:

  • TRUNCATE 重新設(shè)置自增列,計數(shù)器會歸零
  • TRUNCATE 不會影響事務(wù)
-- 測試
CREATE TABLE `test`(
    `id` INT(4) NOT NULL AUTO_INCREMENT,
    `COLL` VARCHAR(20) NOT NULL,
    PRIMARY KEY('id')
)ENGINE=INNODB DEFAULT CHARSET=UTF8

INSERT TNTO `test` (`coll`) VALUES('1')('2')('3')

DELETE FROM `test` -- 不會影響自增

TRUNCATE TABLE `test` -- 自帶會歸零

了解即可:delete刪除的問題,重啟數(shù)據(jù)庫,現(xiàn)象

  • INNODB 自增列會從1開始,(存在內(nèi)存當(dāng)中的斷電即失)
  • MYISAM 繼續(xù)從上一個子增量開始(存在文件當(dāng)中的,不會丟失)

+++

+++

課后的添加實例展示

添加:

-- 一條元組的添加示例
insert into `Student` values('180103','對象三','女','22','CS')

-- 測試添加多條元組,中間使用英文逗號隔開
INSERT INTO `Student` VALUES('180105','對象五','男','19','IS'),('180106','對象六','女','20','CS'),('180107','對象七','女','20','CS')

-- 因為表的結(jié)構(gòu)設(shè)置非空,這里沒有測試只添加某個屬性列的值

+++

修改:update

UPDATE `student` SET `sname` = '操作修改對象一' WHERE `sno`= 180102;
-- 記得添加的時候不要帶逗號,我的問題出在了下面帶了逗號
-- UPDATE `student` SET `sname` = '操作修改對象一',WHERE `sno`= 180102;

添加成功后,表的結(jié)果截圖展示:

刪除:delete

-- 刪除單條記錄<符合WHERE條件就刪除這條記錄>
DELETE FROM `student` WHERE sname = '操作修改對象一';
-- 使用TRUNCATE清空數(shù)據(jù)表
TRUNCATE Table `student`
-- 或者使用 delete刪除所有數(shù)據(jù)庫
DELETE FROM `student`
-- 不會影響自增

操作結(jié)果展示

-- 因為刪除了所有數(shù)據(jù),所以結(jié)果是表為空

總結(jié)

到此這篇關(guān)于Mysql數(shù)據(jù)庫值的添加、修改、刪除及清空操作的文章就介紹到這了,更多相關(guān)Mysql值添加、修改、刪除及清空內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解MySQL 聯(lián)合查詢優(yōu)化機(jī)制

    詳解MySQL 聯(lián)合查詢優(yōu)化機(jī)制

    MySQL 使用聯(lián)合的形式的地方會遠(yuǎn)遠(yuǎn)超過我們過去認(rèn)知的范疇?;旧?,它會認(rèn)為每個查詢都有聯(lián)合,而不僅僅是從兩張表中查出匹配的數(shù)據(jù)行,這包括了子查詢,甚至僅僅對單表的 SELECT 操作。因此,理解 MySQL 如何執(zhí)行聯(lián)合十分重要。
    2021-05-05
  • InnoDB中不同SQL語句設(shè)置鎖的情況詳解

    InnoDB中不同SQL語句設(shè)置鎖的情況詳解

    這篇文章主要介紹了InnoDB中不同SQL語句設(shè)置鎖的情況詳解,在Mysql中,鎖定讀、更新、刪除操作通常會對SQL語句處理過程中掃描到的每條索引記錄設(shè)置記錄鎖,需要的朋友可以參考下
    2024-01-01
  • 解析MYSQL顯示表信息的方法

    解析MYSQL顯示表信息的方法

    本篇文章是對MYSQL顯示表信息的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • 調(diào)用MySQL中數(shù)據(jù)庫元數(shù)據(jù)的方法

    調(diào)用MySQL中數(shù)據(jù)庫元數(shù)據(jù)的方法

    這篇文章主要介紹了調(diào)用MySQL中數(shù)據(jù)庫元數(shù)據(jù)的方法,文中給出了了PHP和Perl腳本下的調(diào)用示例,需要的朋友可以參考下
    2015-05-05
  • MySQL索引失效之隱式轉(zhuǎn)換的問題

    MySQL索引失效之隱式轉(zhuǎn)換的問題

    本文主要介紹了MySQL索引失效之隱式轉(zhuǎn)換的問題,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • 用mysqldump備份和恢復(fù)指定表的方法

    用mysqldump備份和恢復(fù)指定表的方法

    用mysqldump備份和恢復(fù)指定表的方法...
    2007-07-07
  • mysql 8.0.11安裝教程圖文解說

    mysql 8.0.11安裝教程圖文解說

    本文通過圖文并茂的形式給大家介紹了mysql 8.0.11安裝教程,非常不錯,具有一定的參考借鑒價值 ,需要的朋友可以參考下
    2019-04-04
  • 淺談mysql8.0新特性的坑和解決辦法(小結(jié))

    淺談mysql8.0新特性的坑和解決辦法(小結(jié))

    這篇文章主要介紹了淺談mysql8.0新特性的坑和解決辦法(小結(jié)),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-09-09
  • MySQL數(shù)據(jù)庫配置優(yōu)化的方案

    MySQL數(shù)據(jù)庫配置優(yōu)化的方案

    我們總是希望MySQL能夠獲得更高的查詢性能,最好的辦法是弄清楚MySQL是如何優(yōu)化和執(zhí)行查詢的。本文講解MySQL在各個方面的優(yōu)化方向,方便后端開發(fā)人員在調(diào)優(yōu)和問題排查過程中找到切入點
    2023-02-02
  • mysql啟動提示:錯誤2系統(tǒng)找不到指定文件的解決方案

    mysql啟動提示:錯誤2系統(tǒng)找不到指定文件的解決方案

    這篇文章主要給大家介紹了mysql啟動提示:錯誤2系統(tǒng)找不到指定文件的解決方案,文中通過圖文結(jié)合的方式給大家講解的非常詳細(xì),對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-02-02

最新評論