日期:2014-05-16  浏览次数:20684 次

mysql_了解篇

作为一名网游黑盒测试人员,在入职后的很长一段时间内(大概1年半时间)被告诉或告诉别人在使用数据库方面(mysql)只需要3点就够用了:

1 单表查询,select * from table_name;

2 联表查询,select a.*,b.* from tablea_name a,tableb_name b where a.columnx=b.columnx;

3 unix时间戳转换函数,select unix_timestamp(),from_unixtime();

 

随着工作需要,我跟数据库管理员有少许工作上的接触,渐渐地发现对数据库知识的匮乏已然成为影响工作效率和沟通的一个因素,于是开始利用工作之余时间弥补,一方面,当天遇到的问题为了不影响工作进度先快速解决,然后将其记录下来,在工作之余进行相关知识点的学习,一方面从浅到深的进行mysql的系统学习。

 

为了记得更牢和控制学习进度,系统学习mysql时把重要的内容写在了word文档里,练习部分直接在mysql gui上进行的,因此需要安装mysql和mysql gui,另外创建一些练习用的数据库表,表结构和数据尽可能实用,因为做的是游戏测试,当时是仿照公司的数据库结构自己创建了几个表进行练习的。

 

当对数据库有了一定的了解之后发现,就算跟数据库管理员无工作上的接触,这些知识对工作效率的提高和职业的发展依然是大有裨益的。

了解mysql

重要的数据库术语清单:

数据库(database保存有组织的数据的容器(通常是一个文件或一组文件)。

人们通常用数据库这个术语来代表他们使用的数据库软件,这是不正确的。确切地说,数据库软件应称为数据库管理系统(或DBMS)。数据库是通过DBMS创建和操纵的。

 

表(table某种特定类型数据的结构化清单。

 

模式(schema关于数据库和表的布局及特性的信息。

 

列(column表中的一个字段。所有表都是由一个或多个列组成。

正确地将数据分解成多个列极为重要。

 

数据类型(datatype所容许的数据的类型。每个表列都有相应的数据类型,他限制(或容许)该列中存储的数据。

数据类型限制可存储在列中的数据种类。数据类型还帮助正确地分类数据,并在优化磁盘使用方面起重要的作用。因此,在创建表时必须对数据类型给予特别的关注。

 

数据类型兼容数据类型及其名称是sql不兼容的一个主要原因。虽然大多数数据类型得到一致的支持,但许多更为高级的数据类型却不是这样。更糟的是,偶然会发现相同的数据类型在不同的DBMS中具有不同的名称。对此,用户毫无办法,重要的是创建表结构时要记住这些差异。

 

行(row表的一个记录(record)。

很多程度上,行和记录这两个术语是可以相互交换使用的,但从技术上说,行才是正确的术语。

 

主键(primary key一列(或一组列),其值能够唯一标识表中的每个行。

没有主键,更新或删除表中特定行很困难,因为没有安全的方法保证只涉及相关的行。

表中的任何列都可以作为主键,只要它满足以下条件:

1)  任意两行都不具有相同的主键值;

2)  每个行都必须具有一个主键值