首页 > 其他分享 >第十四章学习笔记

第十四章学习笔记

时间:2022-11-20 16:56:39浏览次数:43  
标签:name 数据库 mysql 笔记 学习 命令 MySQL 第十四章 table

第14章:MySQL数据库

摘要

本章讨论了MySQL关系数据库系统;介绍了MySQL并指出了它的重要性;展示了如何在Linux机器上安装和运行MySQL;演示了如何使用MySQL在命令模式和批处理模式下使用SQL脚本创建和管理数据库;说明了如何将MySQL与C编程相结合;演示了如何将MySQL与PHP集成,通过动态Web页面创建和管理数据库。

MySQL简介

  • MySQL是一个关系数据库系统在关系数据库中,数据存储在表中。每个表由多个行和列组成。表中的数据相互关联。表也可能与其他表有关联。关系结构使得可在表上运行查询来检索信息并修改数据库中的数据。
  • MySQL是一个开源数据库管理系统,由服务器和客户机组成。在将客户机连接到服务器后,用户可向服务器输入SQL命令,以便创建数据库,删除数据库,存储、组织和检索数据库中的数据。- -- MySQL有广泛的应用。除了提供标准的数据库系统服务外,MySQL 和PHP已成为大多数数据管理和在线商务网站的主干网。

安装与使用MySQL

环境变量

    我的电脑 -> 右击属性 -> 高级系统设置 -> 环境变量 ->系统变量 ->path

    在path变量后加上;变量值

    变量值就是MySQL下的bin目录路径

    注意:必须开启wamp服务器才可以进去

进入MySQL数据库

    DOS系统下清屏的命令:cls

    mysql -h localhost -u root -p -b

      -h 服务器(本地、指定服务器IP的)[本地localhost可以省略]
      -u 用户名(我们用的是root用户:超级管理员)
      -p 用户密码(不需要再它后面写密码,密码是回车之后写的)
      -b 蜂鸣器(当命令敲错了,报错时提示的声音)

进入MySQL数据库以后的命令

    注意:
    1> 每一行命令结束了以后,请使用 ; 或 \g 来结束,否则命令可以一直写下去
    2> 在MySQL的命令中,如果一行命令没有敲完,就回车了,它会继续执行下去,前提是必须是一条完整的命令
    3> 退出敲错的命令、或不想继续执行下去的命令时,用\c 或者 Ctrl+c
    4> 要想让数据竖起来显示,在命令后用\G
    5> \s 可以显示当前服务器的配置
    6> help 查看所有可以使用的快捷命令
    7> 如果在命令行中遇到了单引号,则MySQL认为你要输入一段字符串,所以,它是必须使用结束的单引号,可以跳出字符串输入状态;

退出数据库服务器

    \q 、 exit、 quit  三者皆可

 

Ubuntu Linux 可通过以下命令安装

 sudo apt-get install mysql-server
 mysql_secure_installation

 

  • Slackware Linux在Slackware 14.0或更早版本中,可通过以下步骤配置MySQL:
    1.设置my.cnf : MySQL在启动时加载一个名为my.cnf的配置文件。该文件要在首次设置MySQL时创建。在/etc目录中,有几个示例my.cnf文件,文件名分别是my-small. cnf. my-large.cnf等。选择所需的版本来创建my.cnf文件,如
    cp /etc/my-small.cnf /etc/my.cnf
    2.安装所需数据库:MySQL需要一个所需数据库集,用于用户识别等。要安装它们, 可使用mysql用户作为超级用户,并使用以下命令安装所需的初始数据库。
    mysql_install_db
    3.设置所需的系统权限:该步骤确保mysql用户拥有mysql系统的所有权。
    chown -R inysql.mysql /var/lib/mysql
    4.通过以下操作使Zetc/rc.d/rc.mysqld可执行:
    chmod 7S5 /etc/rc.d/rc.mysqld
    • 这将在后续系统引导上自动启动MySQL守护进程mysqld。
  • 数据库操作
    • 连接MYSQL服务器:
mysql -u root -p
Enter password:
mysql>

 

  • 显示数据库:SHOW DATABASES命令可显示MySQL中的当前数据库
  • 新建数据库:CREATE DATABASE dbname 创建一个名为dbname的数据库,如果数据库已经存在,则可以使用IF NOT EXISTS子句对命令限定。
  • 删除数据库:DROP DATABASE dbname 删除已存在的命名数据库,该命令可以用一个可选的IF EXISTS 子句限定。
  • 选择数据库:USE dbname命令选择一个数据库
  • 创建表:CREATE TABLE table_name 命令回在当前数据库中创建一个表;DESCRIBE 命令显示表格式和列属性。
  • 删除表:DROP TABLE table_name 命令删除表
  • Mysql中的数据类型
    • 数值类型:
      • INT:整数(4字节),TINYINT:(1字节)S,MALLINT:(2字节)等。
      • FLOAT:浮动指针数。
    • 字符串类型:
      • CHAR(size):固定长度字符串,长度为1~255字符。
      • VARCHAR(size):可变长度字符串,但不能使用任何空格。
      • TEXT:可变长度的字符串。
    • 日期和时间类型:
      • DATE:日期格式为YYYYMM-DD。
      • TIME:以HHMMSS格式保存时间.
  • Mysql中的数据操作
    • 插入行:
      • 要在表中添加行,可使用INSERT命名,具有语法形式:
        INSERT INTO table_name VLAUES(columnValuel,columnValue2,....);
    • 删除行:
      • 使用DELETE命令从表中删除行
DELETE FROM table_name;
DELETE FROM table_name WHERE condition;

 

    • 更新表:
      • UPDATE命令用于修改表中的现有记录(列)
        UPDATE table_name SET coll = value1, col2 = value2,…… WHERE condition;
    • 修改表:
      • ALTER TABLE命令用于添加、删除或修改当前表中的列。它还用于添加和删除当前表中的各种约束条件。
      • 修改表名
        • 如需修改表名,可使用以下命令:
          ALTER TABLE table name renAme To new_name;
        • 添加列 要在表中添加列,可使用以下命令:
          ALTER TABLE table name ADD column name datatype;
        • 删除行 可使用以下命令删除列:
          ALTER TABLE table name DROP column name datatype;
        • 更改/修改行 可使用以下命令修改表中某列的数据类型:
          ALTER TABLE table name ALTER COLUNN column_name datatype;
        • 关联表
          • 一个真正的数据库可以能包含多个相互关联的表,使用主键-外键约束条件来定义表关系。
            • 一对一
            • 一对多
            • 多对多
            • 自引用
        • 连接操作
          • 在MySQL中,可使用连接操作在多个表中检索数据。连接操作有4种不同的类型。
            • (INNER)JOIN tablel,table2:检索两个表中共有的项。
            • LEFT JOIN tablel,table2:检索表1中的项以及两个表中共有的项。
            • RIGHT JOIN tablel,table2:检索表2中的项以及两个表中共有的项。
            • OUTER JOIN tabell, table2:检索两个表中非共有以及没有用的项。
          • 对于正则集运算,MySQL中的连接操作可以解释如下。+表示两个集合的并集,^表示两个集合的交集。则有
            • (INNER) JOIN t1, t2 = t1 ^ t2
            • LEFT JOIN t1, t2 m t1 + (t1 ^ t2)
            • RIGHT JOIN t1, t2 = t2 +(t1 ^ t2)
            • OUTER JOIN t1, t2 = t1 + t2;

标签:name,数据库,mysql,笔记,学习,命令,MySQL,第十四章,table
From: https://www.cnblogs.com/MRC-/p/16908865.html

相关文章