当前位置:Gxlcms > 数据库问题 > MySQL

MySQL

时间:2021-07-01 10:21:17 帮助过:9人阅读

MySQL

MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。

在本教程中,会让大家快速掌握 MySQL 的基本知识,并轻松使用 MySQL 数据库。

RDBMS 术语

在我们开始学习MySQL 数据库前,让我们先了解下RDBMS的一些术语:

  • 数据库: 数据库是一些关联表的集合。
  • 数据表: 表是数据的矩阵。在一个数据库中的表看起来像一个简单的电子表格。
  • 列: 一列(数据元素) 包含了相同类型的数据, 例如邮政编码的数据。
  • 行:一行(=元组,或记录)是一组相关的数据,例如一条用户订阅的数据。
  • 冗余:存储两倍数据,冗余降低了性能,但提高了数据的安全性。
  • 主键:主键是唯一的。一个数据表中只能包含一个主键。你可以使用主键来查询数据。
  • 外键:外键用于关联两个表。
  • 复合键:复合键(组合键)将多个列作为一个索引键,一般用于复合索引。
  • 索引:使用索引可快速访问数据库表中的特定信息。索引是对数据库表中一列或多列的值进行排序的一种结构。类似于书籍的目录。
  • 参照完整性: 参照的完整性要求关系中不允许引用不存在的实体。与实体完整性是关系模型必须满足的完整性约束条件,目的是保证数据的一致性。

MySQL 为关系型数据库(Relational Database Management System), 这种所谓的"关系型"可以理解为"表格"的概念, 一个关系型数据库由一个或数个表格组成, 如图所示的一个表格:

技术图片

  • 表头(header): 每一列的名称;
  • 列(col): 具有相同数据类型的数据的集合;
  • 行(row): 每一行用来描述某条记录的具体信息;
  • 值(value): 行的具体信息, 每个值必须与该列的数据类型相同;
  • 键(key): 键的值在当前列中具有唯一性。

 

MySQL数据库

MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司。MySQL 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

  • MySQL 是开源的,所以你不需要支付额外的费用。
  • MySQL 支持大型的数据库。可以处理拥有上千万条记录的大型数据库。
  • MySQL 使用标准的 SQL 数据语言形式。
  • MySQL 可以运行于多个系统上,并且支持多种语言。这些编程语言包括 C、C++、Python、Java、Perl、PHP、Eiffel、Ruby 和 Tcl 等。
  • MySQL 对PHP有很好的支持,PHP 是目前最流行的 Web 开发语言。
  • MySQL 支持大型数据库,支持 5000 万条记录的数据仓库,32 位系统表文件最大可支持 4GB,64 位系统支持最大的表文件为8TB。
  • MySQL 是可以定制的,采用了 GPL 协议,你可以修改源码来开发自己的 MySQL 系统。
在PHP中使用MySQL    
 连接数据库管理系统函数:         $link = new mysqli(host,username,password,dbname);           参数释义:                host,mysql的主机名或ip地址                usernane,mysql用户名                pasword,mysql密码                dbname,要操作的数据库名           返回值:                当连接成功时返回连接标识符                当连接失败时返回false         连接失败:             echo $link->connect_error;        设置字符集:           $link->set_charset("utf8");        查询语句(执行一条sql语句):           $link->query(sql命令);            插入数据:           $query1 = "insert tb_name (字段名) values(对应值)";           $link->query($query1);        更新数据:           $query2 = "update tb_name set 字段名=值 where 条件";           $link->query($query2);        删除记录:           $query3 = "delete from tb_name where 条件"           $link->query($query3);        查询记录:           $query4 = "select * from tb_name";           $res = $link->query($query4);                     索引数组+关联数组查看数据:$res->fetch_array()           索引数组查看数据:$res->fetch_row();           关联数组查看数据:$res->fetch_assoc();        √           对象方式查看数据:$res->fetch_object();           以上四种方式每次执行返回一条记录的数据,可配合循环多次执行,查询所有数据                 断开数据库的函数:           $link->close();           断开连接           程序执行完毕自动断开,可省略不用  
   

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

                                              在命令窗口使用MySQL  
登录过程中出现1103报错、登录过程中出现1045报错: https://www.jianshu.com/p/c3ac62985369        MySQL语句的规范:           1.关键字与函数名称全部大写           2.数据库名称,表名称,字段名称全部小写           3.SQL语句必须以分号结尾        创建数据库:           CREATE DATABASE db_name;           CHARACTER SET charset_name     //创建数据库同时设置编码方式      查看编码格式:           SHOW CREATE DATABASE db_name;      查看当前服务器下的数据库列表:           SHOW DATABASES;      修改编码格式:           ALTER DATABASE db_name CHARACTER SET utf8;      删除数据库:           DROP DATABASE db_name;      选择数据库:           USE db_name;      显示当前数据库:           SELECT DATABASE();      -----------------------------------------------------------------------------      创建数据表(创建字段名):           CREATE TABLE table_name (                column_name data_type,                ......           )      显示数据表列表:           SHOW TABLES [FROM db_name];      显示数据表的结构:           SHOW COLUMNS FROM tb_name;      修改数据表:         添加一列:             ALTER TABLE tb_name ADD column_name data_type;         添加多列:             ALTER TABLE tb_name ADD (column_name data_type,…);         删除列:             ALTER TABLE tb_name DROP column_name,DROP column_name,……        插入记录(创建字段下的数据):           INSERT tb_name (col_name,...) VALUES(val,...);      查找记录:           SELECT col_name,... FROM tb_name;      更新记录UPDATE:           UPDATE tb_name SET age = age + 5, sex = 2 WHERE username=‘TOM’;      删除记录DELETE:           DELETE FROM tb_name WHERE id=2;        排序:SELECT * FROM stu ORDER BY 笔试 LIMIT 0,8
         

 

MySQL

标签:速度   from   ack   www   oracl   div   db_name   pass   方式   

人气教程排行