MySQL 基礎文法結構

來源:互聯網
上載者:User

標籤:賦值   rename   modify   結束   lock   sql語言   約束   update   hang   

增、刪、改、查  DATABASE

1,建立資料庫【增】

create database dbname charset utf8;#建立    資料庫   庫名   設定編碼  UTF8

2,查詢庫【查】

show create database dbname;#查詢資料庫的 建立資訊  show databases;#列出所有存在的資料庫名

 

3,改資料庫【改】

alter database db1 charset gbk;#更改   資料庫   名  編碼格式 GBK#更改資料庫名為db1的資料庫編碼為gbk。

4,刪除資料庫【刪】

drop database db1;#刪    資料庫   名
 TABLE

切換庫: use DataBaseName;( 庫等同於檔案夾,切換庫就如同切換檔案夾 )

查看當前庫: select database();(查看當前所在的庫名,就相當於查看當前檔案夾名)

表的操作就是在庫(檔案夾)內部操作,每一個表就相當於是庫中的檔案,表名就是檔案名稱,表內容就是檔案內容。建立的表會產生兩個檔案,一個是*.frm 另一個是 *.ibd。

1,建立表【增】

#文法形式create table 表名(欄位名1 類型[(寬度) 約束條件],欄位名2 類型[(寬度) 約束條件],欄位名3 類型[(寬度) 約束條件]);#欄位間用‘,‘逗號分開,最後一個不要有‘,‘逗號。#語句樣式create table t1(id int,name char);#建立    表   表名 (列名 屬性)

2,查詢表【查】

show create table t1;#查詢 已建立 表的屬性資訊 “\G”使用後會格式化顯示。desc t1;#與上一條一樣,查詢已建立表的屬性資訊。show tables;#查詢當前庫中所有表的名字。

3,修改表結構【改】

#修改表名alter table t1 rename newt1#修改   表  表名 改名  新表名#增加欄位alter table t1 add remarks char(10);#修改   表  表名 增加 欄位名  欄位類型alter table t1 add remarks char(10),               add remarks2 char(11);#註:添加多個欄位用‘,‘逗號分隔,‘;‘分號結束,但都需要 ADD 欄位名 資料類型 格式。alter table t1 add newfield int first;#修改  表   表名 增加 欄位名 欄位類型 添加最前面#註:first 表示將該條欄位添加到表的最前面。   alter table t1 add newfield1 int after name;#修改  表   表名 增加 欄位名  欄位類型 在...後面 欄位名#註:after + 欄位名 意思是將新的欄位名填加到某欄位名之後。  #刪除欄位alter table t1 drop newfield1;#修改   表  表名 丟掉 欄位名#修改欄位   alter table t1 modify name char(10);#修改   表  表名 屬性    列名  屬性值alter table t1 change name Name char(10);#修改   表  表名 更改   列名(舊) 列名(新) 屬性值

4,刪除表【刪】

drop table t1;#刪   表    表名

複製表

1. 先建立一個空庫 :     create database db3 charset utf8;2. 使用新庫:     use db3;3. 【方法一】複製目標庫表中的欄位:     create table t1 select host,user from mysql.user;      建立    表  表名  尋找   欄位名     從   目標庫.目標表;#註:複製過後表的結構屬性和表內欄位資料一同都拷貝過來了。如果只想拷貝表結構,可以使用where條件或讓where後的條件式不成立,這樣就只拷貝表結構了。#例:create table t1 select host,user from mysql.user where 1>5;   #【方法二】複製表結構:    create table t1 like mysql.user;    #建立    表  表名 像   目標庫.目標表#註:只拷貝表結構,不含欄位內容
記錄 Record

1,添加記錄【增】

insert into t1(id,name) value (id,name);#插入   到   表名(列名)  值  (列名)#into可以不寫,但建議寫上,使語句結構完整易讀,另外就算是一個列名也必須加括弧。例:t1(name) value (name)insert into t1 value(id,name),(id,name);insert into t1(name) value (name),(name);#插入 到 t1 值為(列名),如果指定了表中的某列,那麼值也要按指定的格式賦值,如二例所示。

2,查表記錄【查】

select id,name from t1;#查詢 列名      從   表名select id,name from db1.t1;#查詢   列名     從   資料庫名.表名select * from t1;#查詢  所有列  從  表名

3,改表資訊【改】

update db1.t1 set name=‘sly‘;#更新  資料庫名.表名 設定 列名=新值#將資料庫db1中的t1表中name列內容改為‘sly‘。update t1 set name=‘sly‘ where id=2;#更新  表名 設定 列名=新值  條件 條件值#更新 t1表中的name列的內容改為‘sly,條件為id為2的記錄。

 

4,刪除記錄【刪】

delete from t1;#刪除   從  表名#刪除t1表中的所有記錄。delete from t1 where id=2;#刪除   從  表名  條件  條件值
SQL語句的基本概念

SQL語言主要用於存取資料、查詢資料、更新資料和管理關聯性資料庫系統,SQL語言由IBM開發。SQL語言分為3種類型:

1、DDL語句 資料庫定義語言: 資料庫、表、視圖、索引、預存程序,例如CREATE DROP ALTER

2、DML語句 資料庫操縱語言: 插入資料INSERT、刪除資料DELETE、更新資料UPDATE、查詢資料SELECT

3、DCL語句 資料庫控制語言: 例如控制使用者的存取權限GRANT、REVOKE

庫的命名規則

可以由字母、數字、底線、@、#、$

區分大小寫

唯一性

不能使用關鍵字,如create select

不能單獨使用數字

最長128位

使用help + 命令 可以查看SQL語句的用法.

表的類型 就是 儲存引擎

一、查看MySQL支援的儲存引擎

#命令show engines;

註:MySQL支援多種儲存引擎,是需要關注innoDB,MySQL的預設引擎。

二、指定表類型(儲存引擎)

#例:create table t1(id int) engines=innoDB;

innoDB在庫中是兩張表。

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.