《MySQL与MariaDB学习指南》学习笔记1.0

第一章,探索数据库

启动:

`net start mysql`

` mysql -- initialize `

 初始化mysql

` mysql -u root -p`      

   初始密码
  • mysql 不区分关键值的大小写,但是将关键值大写可以能够让读者辨别哪些是SQL约定的,而哪些是可变的。

  • 先看一下mysql中都有哪些数据库

    SHOW DATABASES;

    其中 information_schema 数据库包含服务器的相关信息
    mysql 数据库储存着用户名、密码和权限

  • 首先创建一个test数据库

    CREATE DATABASE test;

  • 在test数库中新建一个名为books 的表

    CREATE TABLE test.books ( book_id INT,title TEXT, status INT );

  • 列出test库中所有的表

    SHOW TABLES FROM test;

  • 如果一直在同一个数据库中操作,可以设定默认数据库, USE命令

    USE test

    这是mysql客户端的指令而非服务器的,所以通常不加分号结尾

    执行完USE后,就不必再制定test:

    SHOW TABLES;

  • 查看刚建的表,用SQL语句DESCRIBE:

    DESCRIBE books;

  • 插入数据

    INSERT INTO books VALUES(100, 'Heart of Darkness', 0);
    INSERT INTO books VALUES(101, 'The Catcher of the Rye', 1);
    INSERT INTO books VALUES(102, 'My Antonia', 0);

    以上被称为结构化语言。语言各元素需要空格,数量随意,但顺序必须妥当,括号、逗号和分号一个不能少。使用结构化的语句能令查询容易识别,所以执行起来也更快。

  • 读取表中所有的列

    SELECT * FROM books;

    *读取表中第一列

    SELECT * FROM books WHERE status = 1;

    显示status = 1 的所有行

    SELECT * FROM books WHERE status = 0;

  • 让结果不以表格形式展示,而是使每条记录都分成很多行来展示

    SELECT * FROM books WHERE status = 0 \G

  • 修改数据

    UPDATE books SET status = 1 WHERE book_id = 102;

    更新books, 将status的值设为1,作用于book_id等于102 的所有行

    UPDATE books SET status = 0 WHERE book_id = 101;
    SELECT * FROM books WHERE status = 0;

    UPDATE BOOKS
    SET title = 'The Catcher in the Rye', status = 1
    WHERE book_id = 101;

  • 两个表结合在一起

    CREATE TABLE status_names (status_id INT, status_name CHAR(8));

    INSERT INTO status_names VALUES(0, 'Inactive'), (1, 'Active');

    用SELECT 语句连接两个表,并在此过程中有选择性地只让某些数据得以展示。

    SELECT book_id, title, status_name

    FROM books JOIN status_names

    WHERE status = status_id;

    1. book_id 和 title 在 books 表中, status_name 在 status_names 表中,指定想要的列。

    2. 明确这些列来自books 和 status_names 表中。

    3. 将books 表中的 status 列与 status_names 表中的 status_id 列匹配起来。

小结: 这节学习了如何创建并查看数据库,学习了如何创建数据库中的表,并且修改插入值。学习了如何将两个表结合。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值