第8天mysql初级学习

数据库的连接方式:

  1. 命令 :全命令操作 mysql -h localhost -uroot -proot
    show datebases 显示所有数据库名 (注意:最后有个s)

  2. 客户端 :使用客户端远程链接

3.代码程序 java用jdbc这个框架

数据库界面 :菜单栏 工具栏 数据库实例 查询窗口 结果展现

数据库界面.png

数据库连接

文件-新连接


image.png

sql界面 密码123456.png

image.png

数据库界面工具栏常用项目

sql界面功能.png

命令连接 泳道流程图

image.png

客户端连接mysql 泳道流程图

image.png

代码程序连接 泳道流程图

image.png

重要sql命令

  • select 查询 选择
  • update 更新 修改
  • insert into 插入
  • delete 删除
  • create database test 创建test数据库
  • create table test 创建test表
  • create index test 创建test索引
  • alter table 表名 修改数据库表
  • alter database 数据库名 修改数据库
  • drop table 表名 删除数据库表
  • drop index 索引名 删除索引

库操作

1、、创建数据库
命令:create database <数据库名>
例如:建立一个名为xhkdb的数据库
mysql> create database xhkdb;
2、显示所有的数据库
命令:show databases (注意:最后有个s)
mysql> show databases;
3、删除数据库
命令:drop database <数据库名>
例如:删除名为 xhkdb的数据库
mysql> drop database xhkdb;
4、连接数据库
命令: use <数据库名>
例如:如果xhkdb数据库存在,尝试存取它:
mysql> use xhkdb;
屏幕提示:Database changed
5、查看当前使用的数据库
mysql> select database();

6、当前数据库包含的表信息:
mysql> show tables; (注意:最后有个s)

select语句

  • 单个条件查询
  • select */字段名1 from 表名 字段名 = '值'
  • 选取某一列中所有不同的值(去重)
  • select distinct 字段名 from 表名 在字段名前面 加一个 distinct
  • 多个条件查询
  1. select * from 表名 where (条件1 or 条件2) and 条件3 中间 or 2个条件加括号
    2.select * from 表名 where 列名 in ('值1','值2') 同一列中包含某些不同的值为条件
  • 查询前几行数据
    例如:查看表 MyClass 中前2行数据
    mysql> select * from MyClass order by id limit 0,2;

或者:mysql> select * from MyClass limit 0,2;
limit表示还回select制定的记录行
LIMIT n 等价于 LIMIT 0,n

  • 查询模糊语句
    select * from 表名 where 字段名 like '%N%'


    image.png
  • 介于两者之间的语句 butween '值1' and '值2'
    select * from 表名 where 字段名 butween '值1'
    and '值2'
  • 选取2个表中的数据
  1. select 表1.列1,表2.列2 from 表1,表2 where 表1.列1=表2.列2
  2. select 表1.列1,表2.列2 from 表1 inner join 表2 on 表1.列1=表2.列2
  • 筛选条件
  • < = != <> >= <= and or between 值1 and 值2

    image.png

练习select查询语句

-- 查询年龄大于18的所有女同学
SELECT * FROM 表名 age > 18 AND sex = '女';
-- 查询学号大于3且年龄小于20的所有学生
SELECT * FROM 表名 sno > 3 AND age < 20;
-- 查询导师为小吴且学历不为本科的所有学生
SELECT * FROM gy_student_rendj WHERE tname = '小吴' AND education NOT LIKE '%本科%';
-- 查询导师为大吴或者导师为薛鹏垒的所有同学
SELECT * FROM gy_student_rendj WHERE tname = '大吴' OR tname = '薛鹏垒';
-- 查询导师为大吴或者导师为薛鹏垒的所有男同学
SELECT * FROM gy_student_rendj WHERE (tname = '大吴' OR tname = '薛鹏垒') AND sex = '男';

-- 查询年龄在17到24之间的所有男同学的信息
SELECT * FROM gy_student_rendj WHERE age BETWEEN 17 AND 24 AND sex = '男';
-- -- 查询学历为本科或者大专的所有女同学的信息
SELECT * FROM gy_student_rendj WHERE (education = '本科' OR education = '大专') AND sex = '女';
-- 查询导师为王凯或者吴小吴,并且年龄在20到22岁之间的所有学生信息
SELECT * FROM gy_student_rendj WHERE (tname = '王凯' OR tname = '小吴') AND age BETWEEN 20 AND 22;
-- 查询导师为王凯或者小吴,并且年龄在20到22岁之间的所有男学生信息
SELECT * FROM gy_student_rendj WHERE (tname = '王凯' OR tname = '小吴') AND age BETWEEN 20 AND 22 AND sex = '男';

excel

  1. excel与 数据库的区别
    相同点:
  • 都可以存储数据

  • 都可以对数据进行增删改查操作

  • 都可以对数据进行筛选和统计
    不同点:

  • excel的主要服务对象是人;数据库的主要服务对象是程序

  • excel是本地存储,同时只能有一个人使用;数据库可以多人进行远程访问


    微信图片_20180919150129.png

    excel&数据库.jpg

-- 查询某个字段名在那个数据那个表。table_schema 那个库,table_name 那个表。

SELECT table_schema,table_name FROM information_schema.columns WHERE column_name = '字段名'

-- 某张表字段名含有Avp and数据库为B,查询是那张表

SELECT table_name FROM information_schema.COLUMNS WHERE column_name LIKE '%avp%' AND table_schema='b';

-- 例子 某张表字段名含有response and数据库为grails_dev_new,查询是那张表
SELECT table_name FROM information_schema.COLUMNS WHERE column_name LIKE '%response%' AND table_schema='grails_dev_new';

-- 跳到某个数据库内.知道字段名不知道表名,查询字段在那张表.

SELECT table_name FROM information_schema.COLUMNS WHERE column_name ="response";

你可能感兴趣的:(第8天mysql初级学习)