天天看點

MySQL從入門到入魔(01)

資料庫

學習資料庫就是學習如何和資料庫軟體進行交流,SQL語言就是用于程式員和資料庫軟體進行交流的語言.

DBMS:DataBaseManagementSystem 資料庫管理系統(資料庫軟體),包括:MySQL/Oracle/SQLServer,DB2,SQLite等

常見DBMS介紹:

MySQL:開源 Oracle公司産品,08年MySQL被Sun公司收購,09年Sun公司被Oracle, 原MySQL創始人離開Oracle建立新的資料庫MariaDB 市場占有率第一

Oracle:閉源 Oracle公司産品, 性能最高價格最貴的資料庫. 市占率第二

SQLServer:閉源 微軟公司産品,應用在微軟的整套解決方案中 市占率第三

DB2:閉源 IBM公司産品,應用在IBM整套解決方案中.

SQLite:輕量級資料庫,隻提供基礎的增删改成操作.安裝包幾十k,主要應用在移動裝置和嵌入式裝置中.

網站的整套解決方案包括: 開發語言 作業系統 web伺服器軟體 資料庫軟體

開源和閉源

開源:開發源代碼 免費, 盈利方式:通過賣服務 , 會有程式員無償的提供更新和維護

閉源:不開放源代碼 盈利方式:通過賣産品+賣服務, 會有技術大拿攻擊,但是沒關系閉源産品的公司會養着一群人負責維護和更新.

SQL語言

Structured Query Language:結構化查詢語言, 用于程式員和資料庫軟體(DBMS)進行交流

如何連接配接資料庫軟體: 檢查mysql服務開啟 window鍵+r 輸入services.msc

開始菜單中找到Mysql/MariaDB檔案夾 裡面的 Mysql Client 打開後直接輸入密碼

如果是linux或mac系統 先打開終端 在終端中輸入 mysql -u使用者名 -p回車 回車後輸入密碼 回車

斷開連接配接: 關閉視窗 或執行 exit;

Access denied for user 'root'@'localhost' (using password: YES)   密碼錯誤      

資料庫相關SQL語句

往資料庫軟體中儲存資料,需要先建庫再建表,最後再操作表裡面的資料

查詢所有資料庫

格式: show databases;

建立資料庫

格式: create database 資料庫名; 使用預設字元集建立資料

create database db1;

指定字元集格式: create database 資料庫名 character set utf8/gbk;

create database db2 character set utf8;
    create database db3 character set gbk;      

檢視資料庫詳情

格式: show create database 資料庫名;

show create database db1;

删除資料庫

格式: drop database 資料庫名;

drop database db4;

使用資料庫

對表和資料進行操作時必須先使用了資料庫才可以 不然會報錯

格式: use 資料庫名;

use db1;

資料庫相關練習:

分别建立mydb1和mydb2 第一個字元集utf8 第二個gbk

create database mydb1 character set utf8;
    create database mydb2 character set gbk;      

查詢所有資料庫檢查是否建立成功

show databases;

分别查詢兩個資料庫的字元集是否成功

show create database mydb1;
    show create database mydb2;      

先使用mydb1 再使用mydb2

use mydb1;
    use mydb2;      

删除兩個資料庫

drop database mydb1;
    drop database mydb2;      

表相關的SQL

操作表時一定保證已經使用了某個資料庫 不然會報以下錯:

ERROR 1046 (3D000): No database selected

建立表

格式: create table 表名(字段名 字段類型,字段名 字段類型);

create table student(name varchar(10),age int);      

指定字元集格式: create table 表名(字段名 類型,字段名 類型) charset=utf8/gbk;

create table person(name varchar(10),gender varchar(5))charset=gbk;      

查詢所有表

格式: show tables;

查詢表詳情

格式: show create table 表名;

show create table person;      

檢視表字段

格式: desc 表名;

desc student;      

删除表

格式: drop table 表名:

drop table student;      

修改表名

格式: rename table 原名 to 新名;

rename table person to t_person;      

添加表字段

最後添加格式: alter table 表名 add 字段名 類型;

最前面添加:alter table 表名 add 字段名 類型 first;

在某個字段後面添加 alter table 表名 add 字段名 類型 after xxx;

alter table t_person add salary int;
    alter table t_person add id int first;
    alter table t_person add age int after name;      

删除表字段

格式: alter table 表名 drop 字段名;

alter table t_person drop salary;      

修改表字段

格式: alter table 表名 change 原名 新名 新類型;

alter table t_person change age salary int;