数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它的产生距今已有六十多年。随着信息技术和市场的发展,数据库变得无处不在:它在电子商务、银行系统等众多领域都被广泛使用,且成为其系统的重要组成部分。
数据库用于记录数据,使用数据库记录数据可以表现出各种数据间的联系,也可以很方便地对所记录的数据进行增、删、改、查等操作。
结构化查询语言(Structured Query Language)简称 SQL,是上世纪 70 年代由 IBM 公司开发,用于对数据库进行操作的语言。更详细地说,SQL 是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统,同时也是数据库脚本文件的扩展名。
MySQL 是一个 DBMS(数据库管理系统),由瑞典 MySQLAB 公司开发,目前属于 Oracle 公司,MySQL 是最流行的关系型数据库管理系统(关系数据库,是建立在关系数据库模型基础上的数据库,借助于集合代数等概念和方法来处理数据库中的数据)。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发者都选择 MySQL 作为网站数据库。MySQL 使用 SQL 语言进行操作。
1、先检查是否已经安装了MySQL:
输入: sudo service mysql start
输入密码后,如果出现以下提示:
checking for tables which need an upgrade, are corrupt or were not closed cleanly.
说明已经安装;
否则需要安装。
==2、在线安装:==
#安装MySQL服务端、核心程序
sudo apt-get install mysql-server
#安装MySQL客户端
sudo apt-get install mysql-client
然后设置确认YES,设置root密码后,稍等片刻即可。
结束后,验证是否安装并启动成功:
sudo netstat -tap | grep mysql
输入密码后,显示:
tcp 0 0 localhost :mysql * : *
即成功。
可以根据需求,用gedit修改MySQL的配置文件(my.cnf),使用以下命令: ~~~~
sudo gedit /etc/mysql/my.cnf
至此,安装完成,可以使用。
==3、执行MySQL==
1)打开方式:
2)查看数据库
3)链接数据库
4)查看表
5)退出
==4、完整流程模拟==
1)新建数据库
CREATE DATABASE mysql_shiyan;
可以使用小写,注意分号。
检查 :show databases;
多数系统中SQL语句不区分大小写,但是出于严谨,便于区分保留字(指在高级语言中已经定义过的字,使用者不能再将这些字作为变量名或过程名使用)和变量名,把保留字大写,变量和数据小写。
2)连接数据库
use mysql_shiyan
show tables;
3)建数据表
数据表(table)简称表,它是数据库最重要的组成部分之一。数据库只是一个框架,表才是实质内容。
而一个数据库中一般会有多张表,这些各自独立的表通过建立关系被联接起来,才成为可以交叉查阅、一目了然的数据库。
新建数据表:
CREATE TABLE 表的名字
(
列名 数据类型 (数据长度),
列名 。。。。。。。。。。
);
在mysql_shiyan中新建一张表:employee,
包含姓名、id、电话信息。
CREATE TABLE employee (id int (10),name char(20),ph)
==数据类型:==
数据类型 大小(字节) 用途 格式
INT 4 整数
FLOAT 4 单精度浮点数
DOUBLE 8 双精度浮点数
ENUM 单选、比如性别 ENUM(‘a’,’b’,’c’)
SET 多选 SET(’1’,’2’,’3’)
DATE 3 日期 YYYY-MM-DD
TIME 3 时间点或持续时间 HH:MM:SS
YEAR 1 年份值 YYYY
CHAR 0-255 定长字符串
VARCHAR 0-255 变长字符串
TEXT 0-65535 长文本数据
整数除了 INT 外,还有 TINYINT、SMALLINT、MEDIUMINT、BIGINT。
*CHAR*++ 和 VARCHAR 的区别:
CHAR 的长度是固定的,而 VARCHAR 的长度是可以变化的,比如,存储字符串 “abc”,对于 CHAR(10),表示存储的字符将占 10 个字节(包括 7 个空字符),而同样的 VARCHAR(12) 则只占用4个字节的长度,增加一个额外字节来存储字符串本身的长度,12 只是最大值,当你存储的字符小于 12 时,按实际长度存储。
ENUM和SET的区别:
ENUM 类型的数据的值,必须是定义时枚举的值的其中之一,即单选,而 SET 类型的值则可以多选。
4)插入数据
查看表中内容 :
SELECT * FROM 表名
插入语句:
1: INSERT INTO employee( id,name ,phone)
VALUES(01,’tom’,111110);
2 : INSERT INTO employee VALUES(02,’jack’,1122334);
3: INSERT INTO employee(id ,name) VALUES (03,’ROSE’);
有的数据需要用单引号括起来,比如 Tom、Jack、Rose 的名字,这是由于它们的数据类型是 CHAR 型。此外 VARCHAR,TEXT,DATE,TIME,ENUM 等类型的数据也需要单引号修饰,而 INT,FLOAT,DOUBLE 等则不需要。
第一条语句比第二条语句多了一部分:(id,name,phone) 这个括号里列出的,是将要添加的数据 (01,’Tom’,110110110) 其中每个值在表中对应的列。而第三条语句只添加了 (id,name) 两列的数据,所以在表中Rose的phone为NULL。
现在我们再次使用语句 SELECT * FROM employee; 查看 employee 表,可见 Tom 和 Jack 的相关数据已经保存在其中了.