標准的SQL語句之DDL


查詢語句:主要由select 關鍵字完成,查詢語句是SQL 語句中最復雜、功能最豐富的語句。
DML(Data Manipulation Language,數據操作語言) 語句:主要由insert、update和 delete 三個關鍵字完成。
DDL(Data Definition Language,數據定義語言)語句:主要由create、alter、drop和 truncate 四個關鍵字完成。
DCL(Data Control Language,數據控制語言)語句:主要grant和revoke 兩個關鍵字完成。
事務控制語句:主要由commit、rollback和savepoint 三個關鍵字完成。

(DCL語句用於為數據庫用戶授權,或者回收指定用戶的權限,通常無須程序員的操作,這里不做說明)

MySql 基本語法:
執行Mysql 命令的語法:
   
   
   
           
  1. mysql -u 用戶名 [-h主機] -p密碼
如果訪問本地,不需要填寫主機名


查看當前實例下的數據庫
   
   
   
           
  1. show databases;

   
   
   
           
  1. #創建數據庫
  2. create database [if not exists] 數據庫名;

   
   
   
           
  1. #刪除數據庫
  2. drop database zhangjing;

演示完刪除后重新再建一個名為xx的數據庫,這里取名為myTest。



進入指定的數據庫:
   
   
   
           
  1. #進入指定的數據庫
  2. use 數據庫名;
  3. #進入mytest
  4. use mytest;

進入mytest后,查看數據庫下面的所有表:
   
   
   
           
  1. #查看當前數據庫中所有的表
  2. show tables;
當然,現在沒有添加任何表,提示為empty;

查看表的結構使用desc關鍵字,下面會經常用到;
   
   
   
           
  1. desc 表名;


DDL語句:

1.創建表的語法:

    
  
  
  
          
  1. create table 表名 (
  2. columnName1 dataType [default expr],
  3. ...
  4. )
  5. --創建一個名為t_test的表--
  6. crate table t_test(
  7. id int(11),
  8. userName varchar(20),
  9. age int(11),
  10. birthday date
  11. );
  12. --使用desc 關鍵字查看表的結構--
  13. desc t_user;

2,修改表結構的語法

新增列定義:
   
   
   
           
  1. alter table 表名
  2. add
  3. (
  4. #可以有多個列定義
  5. column_name1 dataType [default expr],
  6. ...
  7. )
    
    
    
            
  1. #新增 字段名為‘hobby’,'home'
  2. alter table z_user add(
  3. hobby varchar(200),
  4. home varchar(20)
  5. )


修改列定義:
   
   
   
           
  1. alter table 表名
  2. modify column_name dataType [default expr] [first|after column_name1]
   
   
   
           
  1. #改變列到一行
  2. alter table z_user modify username varchar(25) first;
上面這句sql將username 字段移到第一行


   
   
   
           
  1. #改變列的順序
  2. alter table z_user modify username varchar(25) after id;

除了modify 關鍵字,mysql提供了change 關鍵字,如果需要修改列名就必須使用change。
change的語法如下:
   
   
   
           
  1. alter table 表名
  2. change old_column_name new_column_name dataType [default expr] [first|after column_name];
    
    
    
            
  1. #修改表中的hobby字段為hobbys,同時設置默認值為“旅游”,並將位置定位到最后
  2. alter table t_user
  3. change hobby hobbys varchar(200) default '旅游' after home;



刪除列的語法非常簡單:
   
   
   
           
  1. alter table 表名
  2. drop column_name;
    
    
    
            
  1. #刪除‘hobbys’這一列
  2. alter table z_user drop hobbys;
hobbys這個字段沒有了

重命名數據表的格式:
   
   
   
           
  1. alter table 表名
  2. rename to 新的表名
    
    
    
            
  1. #將t_user 改為 z_user
  2. alter table t_user rename to z_user;


3.刪除表的語法

   
   
   
           
  1. #刪除表的格式
  2. drop table 表名;
說明:
》表結構被刪除,表對象不再存在
》表里的所有數據也被刪除
》該表的所有相關的索引、約束也被刪除

4.truncate 表

大部分數據庫把truncate 當做DDL處理,truncate 被稱為 “截斷” 某個表——它的作用是刪除該表里的全部數據,但保留表結構。
貌似用的比較少。

附帶單詞:
defined:有的定義的











免責聲明!

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



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