天天看點

MySQL和Navicat基本使用MySQL和Navicat基本使用

MySQL和Navicat基本使用

MySQL簡介:

MySQL

是一種開放源代碼的關系型資料庫管理系統(RDBMS),使用最常用的資料庫管理語言–結構化查詢語言(SQL)進行資料庫管理

資料庫分為三級關系:

資料庫伺服器、資料庫、資料表

MySQL安裝:

安裝包下載下傳位址:https://dev.mysql.com/downloads/mysql/

解壓下載下傳的安裝包

在解壓後檔案的根目錄下建立配置檔案

my.ini

my.ini:
[mysql]
#設定mysql用戶端預設字元集
default-character-set = utf8

[mysqld]
#設定mysql的安裝目錄
Basedir = C:\Program Files\mysql-8.0.18-winx64

#設定mysql資料庫的資料的存放目錄
Datadir = C:\Program Files\mysql-8.0.18-winx64\data

#設定允許最大連接配接數
max_connections = 200

#設定打開表的最大緩存數
table_open_cache = 2000

#設定最大緩存線程數量
thread_cache_size = 10

#設定預設使用端口
port = 3306

#設定服務端使用的字元集
character-set-server = utf8

#設定建立新表時将使用的預設存儲引擎
default-storage-engine = INNODB
           

配置環境變量:

我的電腦 – 屬性 – 進階系統設定 – 環境變量 – 系統變量 – path

建立環境變量為mysql安裝檔案bin的路徑

MySQL使用:

用管理者身份打開cmd指令行,進入bin目錄下執行指令生成資料的存放檔案

data

mysqld --initialize-insecure --user=mysql
MySQL和Navicat基本使用MySQL和Navicat基本使用

安裝MySQL

mysqld install

顯示安裝成功

MySQL和Navicat基本使用MySQL和Navicat基本使用

啟動MySQL服務

net start mysql

顯示啟動成功

MySQL和Navicat基本使用MySQL和Navicat基本使用

MySQL常用指令:

啟動MySQL服務

net start mysql

停止MySQL服務

net stop mysql

登入mysql

mysql -u使用者名 -p密碼

顯示資料庫清單

show databases

顯示資料庫中資料表

show tables

顯示資料表的結構

describe 表名

建立資料庫

create database 庫名

删除資料庫

drop database 庫名

建立資料表

create table 表名

删除資料表

drop table 表名

MySQL圖形化處理界面

Navicat

基本使用:

網上可以查到免費版本的Navicat安裝

安裝完成後,啟動MySQL服務,打開Navicat

  1. 點選‘連接配接’,選擇‘MySQL’建立連接配接MySQL服務
    MySQL和Navicat基本使用MySQL和Navicat基本使用
  2. 填寫連接配接資訊後點選‘确定’
    MySQL和Navicat基本使用MySQL和Navicat基本使用
  3. 輕按兩下建立好的‘test’連接配接,啟動連接配接MySQL服務
    MySQL和Navicat基本使用MySQL和Navicat基本使用
  4. 已連接配接MySQL服務,‘test’下面是資料庫名稱
    MySQL和Navicat基本使用MySQL和Navicat基本使用
  5. 右擊‘test’建立資料庫‘test1’
    MySQL和Navicat基本使用MySQL和Navicat基本使用
  6. 輕按兩下建立的資料庫‘test1’,右擊‘表’建立表
    MySQL和Navicat基本使用MySQL和Navicat基本使用
  7. 點選‘添加字段’添加資料表字段
    MySQL和Navicat基本使用MySQL和Navicat基本使用
  8. 設定字段
    MySQL和Navicat基本使用MySQL和Navicat基本使用
  9. 儲存後‘表’下面出現建立的‘list’資料表,可以添加資料
    MySQL和Navicat基本使用MySQL和Navicat基本使用

SQL語句:

SQL

即結構化查詢語言(Structured Query Language),是一種特殊目的的程式設計語言,是一種資料庫查詢和程式設計語言,用于存取資料以及查詢、更新和管理關系資料庫系統

查詢資料

1.基本查詢:
select 字段名1, 字段名2, … from 表名

*: 通配符,代表所有字段

//查詢所有人的id和name
select id,name from list

//查詢所有人的全部資訊
select * from list 
           
2.條件來篩選查詢:
select 字段名1, 字段名2, … from 表名 where 篩選條件

多個篩選條件用‘,’隔開

//查詢id為2的人的全部資訊
select * from list where id = 2

//查詢id大于2小于9的人的全部資訊
select * from list where id >2 and id<9
           
3.模糊查詢:
select 字段名1, 字段名2, … from 表名 where 字段名 like 模糊查詢條件

通配符:

%: 代表任意長度(包括0)的任意字元

_: 代表長度為1的任意字元

//查詢name以王開頭的人的全部資訊
select * from list where name like '王%'

//查詢name以王開頭且為三個字的人的全部資訊
select * from list where name like '王__'

//查詢name中有王的人的全部資訊
select * from list where name like '%王%'
           
4.結果排序查詢:
select 字段名1, 字段名2, … from 表名 order by 排列順序

asc: 升序 (預設值)

desc: 降序

如果有where,where放在order by前面

可進行排序的字段通常是數字整型 英文字元串型 日期型

//查詢所有人的全部資訊,結果按id降序排列
select * from list order by id desc

//查詢所有人的全部資訊,結果先按age降序排列,如果age相同,再按id升序排列
select * from list order by age desc, id asc
           
5.限制結果查詢:
select 字段名1, 字段名2, … from 表名 limit 起始位置,長度

起始位置為查詢結果的索引,從0開始,0代表第一條資料,如果省略,則預設表示從0開始

如果有where和order by,limit放在最後面

//查詢前三個人的全部資訊
select * from list order limit 0,3

//查詢第三個至第五個人的全部資訊
select * from list order limit 2,3

//查詢age最大的三個人的全部資訊
select * from list order order by age desc limit 0,3
           
6.連接配接查詢:
select * from 表名1 join 表名2 on 連接配接條件

連接配接條件一般為:表名1.值1=表名2.值2

可以為字段名和表名定義别名

//查詢list1中id和list2中mid相等的全部資料
select * from list1 join list2 on list1.id=list2.mid

//查詢list1中id和list2中mid相等的list1中的name資料和list2中的age資料
select a.name aname, b.age bage from list1 a join list2 b on a.id=b.mid
           

添加資料

insert into 表名(字段名1, 字段名2, …) values (值1, 值2, …)

insert into 表名 set 字段名1=值1, 字段名2=值2, …

字段的順序要和值的順序互相對應,如果每個字段都有資料,那麼表名後面可以省略字段名,但是values裡面值的順序必須正确,自增長類型的主鍵,可以使用null來填充,MySQL會自動填充資料

//向表中添加一個人
insert into list(name, age) values('李四', 18)
//或
insert into list set name='李四', age=18
           

修改資料

update 表名 set 字段名1=值1, 字段名2=值2, … where 修改條件

不指定修改條件會修改所有資料

//修改id為2的人的age為18
update list set age=18 where id=2

//修改所有人的age為18
update list set age=18
           

删除資料

delete from 表名 where 删除條件

不指定删除條件會删除所有資料

//删除id為2的人
delete from list where id=2 

//删除所有資料
delete from list