mysql--增刪改查

來源:互聯網
上載者:User

標籤:

  • 修改表名
    • --建立使用者表CREATE TABLE IF NOT EXISTS user7(id  SMALLINT UNSIGNED KEY AUTO_INCREMENT,username VARCHAR(50) NOT NULL UNIQUE,password CHAR(20) NOT NULL,email VARCHAR(20) NOT NULL DEFAULT ‘[email protected]‘,age TINYINT UNSIGNED DEFAULT 18,sex ENUM(‘男‘,‘女‘,‘保密‘) NOT NULL DEFAULT ‘男‘,addr VARCHAR(50) NOT NULL DEFAULT ‘上海‘,salary FLOAT(6,2),--這個是浮點型    6位元,保留兩位小數regTime INT UNSIGNED,face CHAR(100) NOT NULL DEFAULT ‘default.jpg‘);INSERT user6(id,username,password,regTime) VALUES(1,‘付志強‘,‘dazhi‘,1994);--重新命名表名:user7變為user8ALTER TABLE user7 RENAME TO user8;ALTER TABLE user8 RENAME AS user7;--TO  和     AS   都可以省略ALTER TABLE user8 RENAME user7;RENAME TABLE 原表名 TO 新表名;--這個TO不能省略
  • 添加和刪除欄位
    • --添加欄位,刪除欄位--添加:ALTER TABLE tbl_name ADD 欄位名稱  欄位類型[完整性條件約束條件][FIRST|AFTER 欄位名稱](加在首部或者某個欄位之後)   和寫欄位差不多  最後可以欄位的位置--添加card欄位 CHAR(18)ALTER TABLE user7 ADD card CHAR(18);ALTER TABLE user7 ADD test1 VARCHAR(100) NOT NULL UNIQUE;ALTER TABLE user7 ADD test2 VARCHAR(100) NOT NULL UNIQUE FIRST;--一次添加多個欄位     選中一個表,完成多個操作ALTER TABLE user7ADD test5 VARCHAR(100) NOT NULL UNIQUE AFTER sex,ADD test6 SET(‘A‘,‘B‘,‘C‘);--刪除指定欄位   ALTER TABLE tab_name DROP 欄位名稱 ALTER TABLE user7 DROP test6;  --一次性的刪除test1,test2,test3,test4,test5 ALTER TABLE user7 DROP test1,  DROP test2, DROP test3, DROP test4; --添加test欄位 刪除addr欄位 ALTER TABLE user7  ADD test INT UNSIGNED NOT NULL DEFAULT 10 AFTER sex, DROP addr;
  • 修改欄位
    • --修改欄位      ALTER TABLE tab_name MODIFY  欄位名稱  欄位類型[完整性條件約束條件][FIRST|AFTER 欄位名稱] --MODIFY   修改欄位類型  將email 修改位VARCHAR(200) ALTER TABLE user7 MODIFY email VARCHAR(200);--這個修改的時候最好是帶上全部的完整性條件約束條件 ALTER TABLE user7 MODIFY email VARCHAR(50) NOT NULL DEFAULT ‘[email protected]‘;--帶上完整的約束性  --將card欄位移動到test欄位之後 ALTER TABLE user7 MODIFY card CHAR(18) AFTER test;--這裡要帶上card的完整的約束性條件  --將test欄位修改位CHAR(32) NOT NULL DEFAULT ‘123‘ 移動到第一個位置 ALTER TABLE user7 MODIFY test CHAR(32) NOT NULL DEFAULT ‘1234‘ FIRST;  --修改欄位的名稱(也能完成MODIFY的功能)      ALTER TABLE tab_name   原欄位名稱   新欄位名稱   欄位類型   --將test欄位改為test1 ALTER TABLE user7 CHANGE test test1 CHAR(32) NOT NULL ;
  • 添加刪除預設值
    • --添加刪除預設值 ALTER TABLE 表名 ALTER 欄位名稱 SET DEFAULT 預設值 ALTER TABLE 表名 ALTER 欄位名稱 DROP DEFAULT
  • 添加刪除主鍵
    • --添加和刪除主鍵 ALTER TABLE 表名 ADD [CONSTRAINT] PRIMARY KEY (欄位名稱,...)--...表示括弧裡面可以是多個欄位,那就是複合主鍵了,如果是一個,那就是單一主鍵了 ALTER TABLE 表名 DROP PRIMARY KEY CREATE TABLE test12(id INT );ALTER TABLE test12 ADD PRIMARY KEY (id);CREATE TABLE test13(id INT,card VARCHAR(50) NOT NULL);ALTER TABLE test13 ADD PRIMARY KEY (id,card);ALTER TABLE test13 DROP PRIMARY KEY;--刪除ALTER TABLE test12 DROP PRIMARY KEY;--刪除--注意:這裡如果建表的時候自增長和主鍵同時存在的時候,你不能直接刪除主鍵,而是應該先是刪除AOTU_INCREMENT,然後再刪除主鍵ALTER TABLE 表名 MODIFY id UNSIGNED NOT NULL;--這樣自增長就沒有了 
  • 添加刪除唯一
    • --添加測試索引ALTER TABLE 表名 ADD UNIQUE(username);ALTER TABLE 表名 ADD  CONSTRAINT symbol UNIQUE  uni_id(username);--這裡的uni_id 是一個索引的名稱,如果不寫這個系統會讓欄位名稱變成預設的索引名稱ALTER TABLE 表名 ADD  CONSTRAINT symbol UNIQUE  aa(card,username);--複合索引唯一--刪除索引唯一ALTER TABLE 表名 DROP {INDEX|KEY} 唯一名稱;--修改表的引擎ALTER TABLE 表名 ENGINE=MyISAM;--修改自增長值ALTER TABLE 表名 AUTO_INCREMENT=100;
  • 刪除資料表
    •   
      --刪除資料表     DROP TABLE [IF  EXISTS]表名;--可以一次刪除多個  也可以刪除一個    類似於添加。當然手動刪除也是可以的。必須先關閉mysql,在關閉mysql服務,最後在檔案中手動刪除資料表,--當我們進入mysql想登入的同時直接開啟某個資料庫的時候:mysql -uroot -p -D 資料庫名稱。

       

mysql--增刪改查

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.