记录我的java之路——day20(周更)

day2-SQL语句

  • 数据库备份mysqldump命令

  • 图形界面工具使用

  • 常用数据类型与运算符

  • SQL查询

  • 系统函数

数据库备份

备份(系统命令行)

#备份数据库实例
mysqldump -uroot -proot mydb > d:/mydb.sql
​
#备份表
mysqldump -uroot -proot mydb tbuser > d:/tbuser.sql

恢复(需要进入mysql命令行,同时use一个指定数据实例)

source d:/mydb.sql

AUTO_INCREMENT,UNSIGNED,ZEROFILL

auto_increment:设置列自增,可用于主键列以及非空唯一列(not null unique)

unsigned:设置无符号列(列值不允许为负数)

zerofill:设置零填充列(当列数据长度不到定义长度时,数值前补0)

数据类型

  • 数值类型

  • 字符串类型

  • 时间日期类型

char类型跟varchar类型区别

char类型是定长字符串,默认大小是255(最大255);char类型一旦定义长度,则无论实际添加的数据长度是否达到最大长度,都会将定义空间占满,char类型效率高一般用于长度固定的列。

varchar类型是定长字符串,默认大小是255(最大长度取决与数据表的编码模式,utf-8:65535/3;GBK:65535/2),varchar类型定义长度之后系统不会直接分配对应大小的空间,而是根据实际填充值的长度申请空间,相对char类型更节省空间,所以varchar用于长度不定的列

SQL查询

sql语句DML语句中最为复杂的是查询语句,insert,update,delete语句多数情况为单表操作,但是select与可以关联多张数据表,针对sql查询需要明确三点:

  1. 查询列

  2. 查询目标表

  3. 查询条件

员工表(Emp)

部门表(Dept)

单表查询

--查询所有员工的姓名,职位,月薪
select ename,job,sal from emp;
​
--查询月薪超过10000的员工
select * from emp where sal>10000;
​
--查询入职时间在2017-01-01~2017-12-31之间的员工
select * from emp where hiredate between '2017-01-01' and '2017-12-31';
​
--查询所有市场经理和项目经理信息
select * from emp where job in('市场经理','项目经理');
​
--模糊查询 ‘%’ ‘_’
--查询员工姓名中包含‘杰’的员工
select * from emp where ename like '%杰%';
​
--查询员工中所有的‘张’姓员工
select * from emp where ename like '张%';
​
--查询员工中‘周’姓名字只有两个字的员工
select * from emp where ename like '周_';

猜你喜欢

转载自blog.csdn.net/qq_34304871/article/details/81448196
今日推荐