mysql 指令->进入mysql数据库
-u 输入用户名
root root是mysql系统权限最大用户
-p 密码
3.3:DROP 删除库 删除表
#注意:一但删除库或者表很难恢复
#生产环境:非常非常谨慎操作
?如果很重库->(备份)->删除
DROP DATABASE 库名;
#如果指定库名存在删除否则就什么都不做.
DROP DATABASE IF EXISTS 库名;
示例:
DROP DATABASE IF EXISTS web1702;
3.4:CREATE TABLE 创建表
标准语法
CREATE TABLE 表名(
列名称1 列类型,
列名称2 列类型,
...
列名称n 列类型
);
#(表名,列名)小写字母开头后面_数字
不要中文不要空格不要其它字符
#所有表第一列都要id编号
示例:
商品表 t_product
编号id 图片pic 名称name 价格price
#列类型
int 整型 -21亿~21
varchar(n) 字符串 n字符(汉字,字母,数字,特字符串)
n 1~20000
datetime 日期时间 年月日时分秒
double(m,n)浮点 m数字其中包含n位小数
示例:
t_product
id(int)/pic(varchar(100)/
name(varchar(20))/price double(10,2)
USE web1702a;
CREATE TABLE t_product(
id INT,
pic VARCHAR(100),
name VARCHAR(20),
price DOUBLE(10,2)
);
二个创建表辅助指令
SHOW TABLES; 查询当前库中所有表名
DESC 表名; 查询指定表名结构
3.5:删除表
#什么删除操作一定谨慎
#
DROP TABLE 表名;
示例:产品表
DROP TABLE t_product;
3.6:向表中添加一行数据(记录)
标准语法:
INSERT INTO 表名 VALUES(值1,值2,..);
#注意
1:如果当前列是(字符串)或(日期类型)
数据加单引号 'tom' '2000-10-10'
2:所有语句以分号结尾
3:字符串类型数据区分大小写
示例:
#表名 t_stu 列 id name ctime
INSERT INTO t_stu VALUES
(1,'tom','2000-10-10');
INSERT INTO t_stu VALUES(2,'jerry',
'2017-05-05');
#检测:查询添加记录
SELECT * FROM 表名;
3.7:更新表中某一些记录
标准语法:
UPDATE 表名 SET 列名=新值;
限制
UPDATE 表名 SET 列名=新值,列名=新值
WHERE 列=值;
示例:
UPDATE t_stu SET ctime = '2017-10-10'
WHERE name = 'tom';
99%-->原因 id==>INT
UPDATE t_stu SET ctime = '2017-10-10'
WHERE id = 1;
UPDATE t_stu SET
ctime = '2017-01-01',
name = 'james'
WHERE id = 1;
3.8:删除表中记录
#删除之前一定谨慎-->
标准语法:
DELETE FROM 表名;
DELETE FROM 表名 WHERE id = 值;
示例:
DELETE FROM t_stu WHERE id=2;
综合练习一.txt
小结指令:
CREATE DATABASE 库名 CHARSET=utf8;
SHOW DATABASES;
USE 库名;
DROP DATABASE 库名;
CREATE TABLE 表名(
列名 列类型,
列名 列类型
);
列类型:int varchar datetime double
SHOW TABLES;
DESC 表名;
INSERT INTO 表名 VALUES(值,,,,)
字符串/日期 ''
DELETE FROM 表名 WHERE 条件;
UPDATE 表名 SET 列名=新值 WHERE 条件;
3.8 查询记录
标准语法:SELECT 列名,列名...
FROM 表名
WHERE 条件
ORDER BY 列名 //排序
特殊情况;
#*所有列
SELECT * FROM 表名;
CREATE TABLE t_user(
id INT,
name VARCHAR(20),
age INT,
ctime DATETIME,
sal DOUBLE(10,2)
);
INSERT INTO t_user
VALUES(1,'tom1',19,now(),10000);
INSERT INTO t_user
VALUES(2,'tom1',18,now(),9000);
INSERT INTO t_user
VALUES(3,'tom1',16,now(),5000);
INSERT INTO t_user
VALUES(4,'tom1',21,now(),12000);
INSERT INTO t_user
VALUES(5,'tom1',18,now(),19000);
INSERT INTO t_user
VALUES(6,'tom1',19,now(),11000);
INSERT INTO t_user
VALUES(7,'tom1',20,now(),10001);
INSERT INTO t_user
VALUES(8,'tom1',19,now(),10000);
1:查询所有记录获取所有列
SELECT * FROM t_user;
2:查询所有记录要求查编号和用户名
SELECT id,name FROM t_user;
3:查询所有记录 编号 姓名 工资 工资涨20%
SELECT id,name,sal,sal*1.2
FROM t_user;
4:查询记录要求 编号 姓名 工资
条件 工资大于10000
SELECT id,name,sal
FROM t_user
WHERE sal>10000;
5:查询记录 要求 编号 姓名 年龄
条件 年龄 19 - 25 之间(包含)
SELECT id,name,age
FROM t_user
WHERE age>=19 AND age <= 25;
6:查询 2017年以后入职员工所有记录
INSERT INTO t_user VALUES
(10,'kk',25,'2015-10-10',9000);
SELECT * FROM t_user
WHERE ctime > '2016-12-31';
7:查询所有记录
条件 工资排序
SELECT * FROM t_user
ORDER BY sal; //升序
SELECT * FROM t_user
ORDER BY sal DESC; //降序
8:组函数
count(列名) 统计列有几行 数字
max(列名) 统计列最大值
min(列名) 统计列最小值
avg(列名) 统计列平均值
sum(列名) 统计列总和
9:工资列几行
SELECT count(sal) FROM t_user;
10: 求工资列最大值/最低
SELECT max(sal) FROM t_user;
SELECT min(sal) FROM t_user;
11: 求平均工资/求工资总和
SELECT avg(sal) FROM t_user;
SELECT sum(sal) FROM t_user;