MySQL增刪改查基本語句


Mysql語句

一,數據對象

  DDL:數據定義語言

      CREATE

      ALTER

      DROP

  DML:數據操作語言

      INSERT

      UPDATE

      DELETE

  DCL:數據控制語言

      GRANT

      REVOKE

二,DDL的用法

  創建數據庫:CREATE  database  testname;

  如果不存在就創建:CREATE  database  IF  NOT  EXISTS testname;

  刪除數據庫:DROP  DATABASE   testname;

創建用戶:CREATE  USER  ‘username’@’host’  IDENTIFIED  BY  ‘PASSWORD’

刪除用戶:DROP  USER  ‘username’@’host’;

HOST解讀:

         IP

         HOSTNAME

         通配符:_:匹配任意單個字符,172.16.0._

         匹配任意長度的任意字符使用,%

查看用戶授權:show  GRANTS  from  ‘username’@‘%’;

 

創建表:CREATE TABLE  tablename; (先切換至testname庫,use testname);

  創建表及數據:create  table  tablename(name varchar(10)  age  int(3));

  查看表:show  table   tablename;

  查看表結構:DESC tablename;

  刪除表:drop  table   tablename;

 

修改表:

MODIFY:修改某個字段,修改字段屬性,字段名字不改

CHANGE:改變某個字段,改變字段名稱

ALTER  table  tablename  CHANGE  id  ID  CHAR(12)  AFTER  name;

ADD:添加一個字段

ALTER  table tablename  ADD  id  int(10);(默認在最后)

解讀:將id修改為大寫id,修改數據類型,放置name后面一行。

DROP:刪除一個字段

ALTER  table  tablename  drop  name;

解讀:刪除一個name字段

不會使用可以幫助:help create table;help alter table;

三,DML的用法

  INSERT  INTO  tablename  (name1,id1…)  VALUES(‘user1’,1);

  INSERT  INTO  tablename   VALUES(‘user1’,1);

  批量插入數據

  INSERT  INTO  tablename  (name1,id1…)  VALUES(‘user1’,1), (‘user2’,2), (‘user3’,3);

 

  UPDATE  tablename   SET  name=’user1’  where  id=5;

  解讀:將表中,user1的用戶,部門號由1改為5

  SELECT  name,id  from  tablename  where  age=33;

  解讀:查詢出年齡為33歲的,顯示名字和部門

  Delete  from  tablename  where  name=‘user1’;

  解讀:刪除表中名字等於user1的,如果沒有帶where表示所有行。

四,DCL數據控制語言

  給一個用戶所有權限

  Grant  ALL  PRIVILEGES  ON  test.*  TO  ‘username’@’%’ IDENTIFIED  BY  ‘123.com’

  給用戶test庫里面所有表,所有權限,並設置密碼為123.com

 

  GRANT  [select, delete,creat…]  ON  ku_name.tab_name  TO ‘username’@‘host’[IDENTIFIED  BY  ‘PASSWORD’];

  解讀:授予查詢,或刪除,哪個庫,哪個表,給哪個用戶,主機權限。后還可以給沒添加密碼的用戶添加密碼,或者重新設置密碼。

  如果用戶不存在,會自動創建並授權。

 

  REVOKE [SELECT,DELETE,CREATE..]  ON  ku_name.tab_name  from  ‘username’@’host’;

  解讀:取消權限的辦法。

五,給用戶添加密碼。

   第一種辦法

 Mysql> SET  PASSWORD  FOR  ‘root’@’localhost’ =PASSWORD(‘123.COM’);

   給root添加密碼,加密存放

   改一個用戶密碼,或授權,密碼和授權存放在內存中,所以要讓mysql加

一下才生效。

    FLUSH  PRIVILEGES;刷新授權表,重新加載。(修改完成,都需重新加載)

   第二種辦法

   Mysqladmin  -uroot  -h127.0.0.1  –p  password ‘ 123.com’;

   第三種辦法

   UPDATE  user  SET  password=PASSWORD(‘123.COM’)  WHERE USER=’root’   AND  Host=[localhost,127.0.0.1];

   解讀:修改root密碼,是locaohost,還是127.0.0.1,

   UPDATE  user  SET  password=PASSWORD(‘123.COM’)  WHERE USER=‘root’;

   解讀:不管是localhost還是127.0.0.1,只要是root用戶的,密碼全部被修改。

   給遠程用戶添加密碼權限

   GRANT ALL PRIVILEGES  ON  *.* TO ‘root’@’192.168.%.%’  IDENTIFIED  BY ‘passwprd’

   允許192.168網段的所有主機,通過root用戶,連接任意表,任意庫,密碼password

    FLUSH  PRIVILEGES;

    遠程登陸:mysql  -uroot  -p  -h192.168.1.1

 

   圖形化管理工具

   Phpmyadmin

   Workbench

   Mysql  front

   Navicat  for   mysql

   Toad

   SQLyog 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM