一,基本命令
1,啟動服務
以管理員身份運行
格式:net start 服務名稱
實例:net start Xvhongye
2,停止服務
說明:以管理員身份運行cmd
格式:net stop 服務名稱
實例:net stop Xvhongye
3,連接數據
格式:mysql -u 用戶名 -p
實例:mysql -u root -p
輸入密碼(安裝時設置的)
4,退出登錄(斷開鏈接)
quit或exit
5,查看版本(鏈接后執行的)
實例:select version();
6,顯示當前時間(連接后執行)
實例:select now();
7,遠程連接
格式:mysql -h ip地址 -u 用戶名 -p
輸入對方mysql的密碼
二,數據庫操作
1,創建數據庫
格式:create database 數據庫名 charset=utf8;
實例:
2,刪除數據
格式:drop database 數據庫名;
3,切換數據庫
格式:use 數據庫名
4,查看當前選擇的數據庫
格式:select database();
1、顯示數據庫列表。
show databases;
三,表操作
1,查看當前數據庫中的所有表
show tables;
2,創建表
格式:create table 表名(列及類型);
說明:auto_increment是自增長的意思
實例:create table Car(id int auto_increment primary key,name varchar(20) not null,age int not null,gender bit default 1,address varchar(20),isDelete bit default 0);
3,刪除表
格式:drop table 表名;
實例:dro table Car;
4,查看表結構
結構:desc 表名
5,查看建表語句
格式:show create table 表名;
6,重命名表名
格式:rename table 原表名 to 新表名
7,修改表
格式:alter table 表名 add|change|drop 列名 類型;
四,數據操作
1,增
a,全列插入
格式:insert into 表名 values(....)
b,缺省插入
格式:insert into 表名(列1,列2,....) values(值1,值2)
c,同時插入多條數據
格式:insert into 表名 values(...),(....),...
2,刪
格式:delete from 表名 where 條件
3,改
格式:updata 表名 set 列1=值1,列2=值2,....where 條件
實例:updata student set age=16 where...
4,查
格式:select * from 表名
五,查
2,消除重復行
在select后面列前面使用distinct可以消除重復的行
實例:select distinct gender from student;
3,條件查詢
邏輯運算符
and
or
not
需求:id>7的女同學
select * from student where id>7 and gender=0
模糊查詢
like
%表示任意多個任意字符
——表示一個任意字符
范圍查詢
in 表示在一個非連續的范圍內
between...and... 表示在一個連續的范圍內
需求:查詢編號為8,9,10的學生
select * from student where id in (8,9,10);
需求:查詢編號為6-10的學生
select * from student where id between 6 and 8;
空判斷
注意:null與“”是不同
判斷空:is null
判斷非空:is not null
4.聚合
cout(*)
max(列)
min(列)
sum(列)
avg(列)
5,分組
按照字段分組,表示此字段相同的數據會被放到一個集合中。
分組后,只能查詢出相同的數據列,對于有差異的數據列無法顯示在結果集中
可以對分組后的數據進行統計,做聚合計算
語法:select 列1,列2,聚合....from 表名 group by 列1,列2.... having 列1,列2...,聚合...;
需求:查詢男女生總數
實例:select gender,count(*) from student group by gender;
where 與having的區別:
where是對from后面指定的表進行篩選,屬于對原始數據的篩選
having是對group by的篩選
6,排序
語法:select * from 表名 order by 列1 asc|desc,列2 asc|desc,....;
asc降序
desc升序
7,分頁
語法:select * from 表名 limit start,count;
說明:start索引從0開始
count查看的數量
六,關聯
建表語句
1,create table class(id int auto_increment primary key,name varchar(20) not null,stuNum int not null)
2,create table students(id int auto_increment primary key,name varchar(20) not null,gender bit default 1,classid int not null,foreign key(classid) references class(id));