您的位置:首页 > 数据库 > MySQL

MySQL系列--2.常用的命令

2019-04-10 22:13 337 查看

1 、创建数据库

#语法:
CREATE DATABASE  dbName;
#创建数据库rms
create database rms;

2、切换数据库

#选择数据库
USE dbName;
#选择数据库rms;
use rms;

3、 查看所有的数据库名称

SHOW DATABASES;

4、创建表

#语法:
#columnName:字段名称
#columnType:字段类型
CREATE TABLE  tableName(columnName,columnTypei);
#创建表customers
CREATE TABLE `customers` (
`customerNumber` int(11) NOT NULL,
`customerName` varchar(50) NOT NULL,
`contactLastName` varchar(50) NOT NULL,
`contactFirstName` varchar(50) NOT NULL,
`phone` varchar(50) NOT NULL
) ;

5、查看数据库中所有的表

SHOW TABLES;

6、查看表结构

#语法:
DESC tableName;
#查看customes的结构
DESC customers;

mysql> DESC customers;
+------------------+-------------+------+-----+---------+-------+
| Field            | Type        | Null | Key | Default | Extra |
+------------------+-------------+------+-----+---------+-------+
| customerNumber   | int(11)     | NO   |     | NULL    |       |
| customerName     | varchar(50) | NO   |     | NULL    |       |
| contactLastName  | varchar(50) | NO   |     | NULL    |       |
| contactFirstName | varchar(50) | NO   |     | NULL    |       |
| phone            | varchar(50) | NO   |     | NULL    |       |
+------------------+-------------+------+-----+---------+-------+
5 rows in set (0.03 sec)

7、插入数据

#语法:
INSERT INTO tableName(columnName1,columnName2,columnName N)values(value1,value2,valueN);
#columeName也可以不写
INSERT INTO tableName values(value1,value2,valueN);
INSERT INTO  customers(customerNumber,customerName,contactLastName,contactFirstName,phone)values(001,"Stephen Wang",'Stephen','Wang','15687965432');

INSERT INTO customers(customerNumber,customerName,contactLastName,contactFirstName,phone)values(003,"Lucy Liu",'Lucy','Liu','15687965432');

8、查看表中的数据

#语法:
SELECT  * FROM tableName;
mysql> select  * from  customers;                                                                 +----------------+--------------+-----------------+------------------+-------------+
| customerNumber | customerName | contactLastName | contactFirstName | phone       |
+----------------+--------------+-----------------+------------------+-------------+
|              2 | Vicent Wang  | Vicent          | Wang             | 15687965438 |
|              1 | Stephen Wang | Stephen         | Wang             | 15687965432 |
|              3 | Lucy Liu     | Lucy            | Liu              | 15687965432 |
+----------------+--------------+-----------------+------------------+-------------+
3 rows in set (0.00 sec)
#查看表中的某些字段,语法:
SELECT columnName1,columnName2 from tableName;
mysql> select customerNumber,customerName from customers;
+----------------+--------------+
| customerNumber | customerName |
+----------------+--------------+
|              2 | Vicent Wang  |
|              1 | Stephen Wang |
|              3 | Lucy Liu     |
+----------------+--------------+
3 rows in set (0.00 sec)
#where条件
#查看客户编号为1的记录
mysql> select customerNumber,customerName from customers  where customerNumber=1;
+----------------+--------------+
| customerNumber | customerName |
+----------------+--------------+
|              1 | Stephen Wang |
+----------------+--------------+
1 row in set (0.00 sec)

9、 更新数据

#语法:
UPDATE tableName  SET columeName=value where  conditions;
#将客户编号为1的客户手机号修改为15997654325
mysql> update customers set phone='15997654325' where customerNumber=1;
Query OK, 1 row affected (0.62 sec)
Rows matched: 1  Changed: 1  Warnings: 0

10、模糊查询

#语法:
select  * from tableName  where columnName like ''condition [and /or] [columeName = value];
#查询表里last name为Wang的客户
mysql> select  *  from  customers where contactFirstName like '%wang';
+----------------+--------------+-----------------+------------------+-------------+
| customerNumber | customerName | contactLastName | contactFirstName | phone       |
+----------------+--------------+-----------------+------------------+-------------+
|              2 | Vicent Wang  | Vicent          | Wang             | 15687965438 |
|              1 | Stephen Wang | Stephen         | Wang             | 15997654325 |
+----------------+--------------+-----------------+------------------+-------------+
2 rows in set (0.08 sec)

11、排序与分组

排序语法:
select  * from  tableName  order by columnName asc / desc;
#按照客户编号递增排序
mysql> select *  from customers order by customerNumber asc;
+----------------+--------------+-----------------+------------------+-------------+
| customerNumber | customerName | contactLastName | contactFirstName | phone       |
+----------------+--------------+-----------------+------------------+-------------+
|              1 | Stephen Wang | Stephen         | Wang             | 15997654325 |
|              2 | Vicent Wang  | Vicent          | Wang             | 15687965438 |
|              3 | Lucy Liu     | Lucy            | Liu              | 15687965432 |
+----------------+--------------+-----------------+------------------+-------------+
3 rows in set (0.00 sec)
#分组语法

#按照contactFirstName分组并统计客户个数
mysql> select  contactFirstName,count(*)  from customers group by contactFirstName;
+------------------+----------+
| contactFirstName | count(*) |
+------------------+----------+
| Liu              |        1 |
| Wang             |        2 |
+------------------+----------+
2 rows in set (0.03 sec)

12、修改字段名称

#新增字段语法:
alter  table  tableName  add columnName;
#修改字段语法:
alter  table  tableName  modify columnName;
#删除字段语法:
alter  table  tableName  drop  columnName;
#customers添加一个状态字段,类型为char(20)
mysql> alter table  customers  add staus char(20);
Query OK, 0 rows affected (0.78 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> select  * from  customers;
+----------------+--------------+-----------------+------------------+-------------+-------+
| customerNumber | customerName | contactLastName | contactFirstName | phone       | staus |
+----------------+--------------+-----------------+------------------+-------------+-------+
|              2 | Vicent Wang  | Vicent          | Wang             | 15687965438 | NULL  |
|              1 | Stephen Wang | Stephen         | Wang             | 15997654325 | NULL  |
|              3 | Lucy Liu     | Lucy            | Liu              | 15687965432 | NULL  |
+----------------+--------------+-----------------+------------------+-------------+-------+
3 rows in set (0.00 sec)

13.、删除

#删除表中的记录,语法:
delete from tableName where conditions;
mysql> delete from  customers where customerNumber=1;
Query OK, 1 row affected (0.06 sec

#删除表数据和结构,语法:
drop  table tableName;
mysql> drop table customers;
Query OK, 0 rows affected (0.16 sec)

#删除数据库,语法:
drop  database dbName;
mysql> drop database rms;
Query OK, 0 rows affected (0.13 sec)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: