黑马程序员技术交流社区
标题:
数据库
[打印本页]
作者:
acx521
时间:
2019-8-5 16:26
标题:
数据库
mysql有一个非常重要的配置文件my.ini,
mysql是一种关系型数据库,所以支持sql语句的规范
SQL语句的书写: 一条语句以分号结尾,关键字建议大写,SQL不区分大小写
mysql的三种注释方式:
单行注释:--空格 # 多行注释:/* */
DDL:数据库定义语言,专门操作数据库和表的增删改查
create增加;创建 drop删除 alter修改 show查询 modify修改
change修改 add添加 rename重命名
DML:数据库操作语言,专门针对表中的数据的增删改
update delete insert where
DQL:数据库查询语言,专门针对表中数据的查询
select where group by order by limit having
DCL:数据控制语言:,专门用来创建用户,删除用户,授权...
创建数据库: create database 数据库名;
查询数据库: show databases;
使用数据库: use 数据库名;
查询表所有的表: show tables:
查询表的结构: desc host ;
MySQL中常用的数据类型:
int 整数 double 小数double(总位数,小数的个数)可以省略
date年月日 datatime 年月日时分秒
timestamp 时间戳 自动生成系统当前时间 varchar 字符串(必须指定长度)
varchar和char的区别:
varchar是可变的,char是固定的,varchar更节省空间
DDL语句
创建表的格式:
create table 表名(
字段名 字段类型 约束,
....
字段名 字段类型 约束(最后一个字段不加逗号)
);
删除表: drop table 表名;
修改表名: alter table 表名 rename to 新表名;
修改表中列名类型:alter table 表名 modify 列名 新数据类型;
修改表中列名和类型:alter table 表名 change 列名 新列名 新数据类型;
向表中添加新的列:alter table 表名 add 列名 数据类型;
删除表中某一列: alter table 表名 drop 列名 ;
DML语句
表中添加数据:
格式: insert into 表名(列名的列表) values(列值得列表)
简化格式: insert into 表名 values(所有列的列值列表)
批量插入格式:insert into 表名 values(所有列的列值列表),(所有列的列值列表),(所有列的 列值列表),(所有列的列值列表)
注意:列名和列值要的个数和类型要一一对应。!!!!
表中数据的删除
delete from 表名 where条件(一定要挂条件,不然会被删除全部数据)
表中数据的修改
update 表名 set 列名=列值 , 列名=列值....where条件;(一定要加条件,否则会全部修改)
DQL语句
null和任何数据计算都为null,可以使用ifnull(字段,默认值)来解决
条件相关的知识:
&&(and) ||(or) !(not)
between and:数据范围区间 ,小的数值必须放在前面
in(集合) 简化多个 or的书写
null不可以用=和!=来判断,应该用is或者is not来判断
like——>模糊查询 _:匹配一个字符 %:匹配多个字符
查询一张表中的所有字段: select * from 表名
查询表中某个列:select 列名 from 表名
去重查询(一般只针对一个字段) : select distinct 列名 from 表名
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2