首頁 > 軟體

MySQL資料管理操作範例講解

2022-12-23 14:00:35

外來鍵

方式一:在建立表的時候,增加約束

刪除有外來鍵的表的時候,要先刪除參照外來鍵的表

物理外來鍵:不建議使用,資料庫級別的外來鍵,不建議使用!(避免資料庫過多造成困擾)

資料庫就是單純的表,只用來存資料,只有行(資料)和列(欄位)

我們想使用多張表的資料,想使用外來鍵,用程式去實現即可

DML語言

資料庫的意義:資料管理,資料儲存

DML語言:資料操作語言

insert  update  delete

新增 insert

-- 插入語句
-- insert into 表名([欄位名1],[欄位2],....) values ('值1','值2',....),('值1','值2',....),...
insert into `grade`(gradename) values ('大四')
-- 由於主鍵自增,我們可以省略(如果不寫欄位名,就會一一匹配)
-- 一般寫插入語句,我們一定要資料和欄位一一匹配
-- 插入多欄位
insert into grade(gradename) 
values('大一'),('大二')
insert into student(name,pwd) 
values ('Lisa','1223')
insert into student(name,pwd) 
values ('Lisa','1442'),('lili','520'),('aaa','126')

語法:insert into 表名([欄位名1],[欄位2],…) values (‘值1’,‘值2’,…),(‘值1’,‘值2’,…),…

注意事項:

  • 欄位和欄位之間使用英文逗號隔開;
  • 欄位是可以省略的,但是後面的值必須要一一對應;
  • 可以同時插入多條資料,values後的值,需要使用,隔開即可 (‘值1’,‘值2’,…),(‘值1’,‘值2’,…),…

修改 update

-- 修改學員的名字
update student set name = '安娜' where id = 1
-- 不指定條件的情況下,會改動所有表!
-- 修改多個屬性
update student set name = '安娜',pwd = '1123' where id = 1
-- 語法:
-- update 表名 set 列名 = value,列名 = value,... where id=1

條件:where 子句 運運算元 id 等於某個值 大於某個值 在某個區間內修改 ,…

語法:update 表名 set 列名 = value,列名 = value,… where id=1

注意:

  • 列名是資料庫的列,儘量帶上``
  • 條件,篩選條件,如果沒有指定則會修改所有的列;
  • value 是一個具體的值,也可以是一個變數
update student set birthday=current_time where id = 1 

設定多個屬性,中間使用英文逗號隔開

刪除 delete

語法:delete from 表名 [where(條件)]

-- 刪除資料 不要這樣寫,會全部刪除的
delete from student
-- 刪除指定資料
delete from student where id=1

​ truncate命令:專門用來刪除資料庫的

作用:完全清空一個資料庫表,表的結構和索引約束不會變

-- 清空grade表
truncate grade

delete和truncate的區別

相同點:都能刪除資料,都不會刪除表 結構

不同:

  • truncate會重新設定自增列,計數器會歸零
  • truncate不會影響事務
   -- 測試delete和truncate的區別
   create table test(
   	id int(4) not null auto_increment,
   	coll varchar(20) not null,
   	PRIMARY key (id)
   )ENGINE=INNODB DEFAULT charset=utf8
   -- delete不會影響自增(刪除了前三行,新增資料還是從第四行開始增加)
   delete from test
   -- truncat自增會歸零(刪除前三行,新增資料從1開始)
   truncate table test

瞭解:

delete刪除的問題,重啟資料庫,會產生如下現象:

​ innodb 自增列會從1開始(存在記憶體當中的,斷電即失)

​ myisam 繼續從上一個自增列開始(存在檔案當中,不會丟失)

到此這篇關於MySQL資料管理操作範例講解的文章就介紹到這了,更多相關MySQL資料管理內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com