pangxia75 发表于 2018-10-7 13:19:10

第9章 mysql

  mysql介绍
  数据库系统:
  数据库:文件夹
  数据表:文件
  表记录:一条数据
  数据库管理软件
  mysql: 开源
  oracle
  sqlserver
  mysql :
  服务端: mysqld
  客户端: cmdphppython
  数据库操作:
  show databases; 显示所有数据库名称
  create database database_name ;创建一个数据库
  show create database database_name;                   查看数据库的创建信息
  use database_name;                                 切换数据库
  alter database db_name             修改数据库的字符集
  drop database db_name;                     删除数据库
  数据表操作:
  1创建表:
  create table table_name (
  filed   字段类型    [完整性约束],
  filed   字段类型    [完整性约束],
  filed   字段类型    [完整性约束],
  );
  2 查看表
  desc table_name;查看表结构
  show tables; 是该数据库下所有的表名
  show create table table_name ; 查看数据库的表创建信息
  3 修改表:

  >
  >
  >
  >  4 删除表
  drop table tab_name;
  表记录操作:
  1 增加记录:
  insert tab_name   (field1,field2....) values (values1,values2....) ,
  (values1,values2....),
  ...               ;
  inserttab_name set field=value, field=value,..... ;
  2 修改记录
  update tab_name set field=value where 子句
  3 删除表记录:
  delete fromtab_namewhere 子句
  清空表记录: 1delete from tab_name
  2truncate tab_name   (数据量大时推荐使用)
  4 查询表记录(******)
  select* from tab_name   : 显示所有的记录的所有字段信息
  select filed,filed2,.....   from tab_name
  where 子句
  group by 分组   key:分组条件
  having 子句: 过滤
  order by
  limit
  查询 每一个省份的平均工资
  select city,avg(salary) from emp group by city;
  查询 平均工资大于8000的省份的名称
  select city,avg(salary) from emp group by city having avg(salary) > 8000
  多表查询:
  内连接查询:
  select * from emp inner join dep on emp.dep_id=dep.id;
  左外连接查询:
  select * from emp left join dep on emp.dep_id=dep.id;
  完整性约束:
  主键约束:
  primary key    :非空(not null )且 唯一 (unique)
  外键约束(关联字段):
  表关系:
  表与表的关系(两张表)
  一对多
  将关联字段设置在多的表中
  CREATE TABLEemp(

  >  name VARCHAR (20),
  dep_id INT ,
  FOREIGN KEY (dep_id) REFERENCES dep(id)
  )
  多对多
  借助第三张表实现的
  CREATETABLESTUDENT2TEACHER(

  >  studnet_id INT ,
  teacher_id INT ,
  FOREIGN KEY (studnet_id)REFERENCES student(id),
  FOREIGN KEY (teacher_id)REFERENCES teacher(id),
  )
  一对一
  将关联字段设为Unique
  CREATE TABLEauthor(

  >  name VARCHAR (20),
  authorDetial_id INT unique,
  FOREIGN KEY (dep_id) REFERENCES dep(id)
  )

页: [1]
查看完整版本: 第9章 mysql