一.数据库基本
1. 数据库概念
数据库: 存储数据的仓库
数据库类型:层次式数据库(存储的方便,查询很慢), 网络式数据库(查询很快,存储不方便), 关系型数据库(以行和列的形式存储数据)
2.关系型数据库
常见的数据库 商业数据库:Oracle 、SQLServer、DB2、Sybase
开源数据库: MySql、SQLLite
3.MySQL数据库服务器、数据库和表的关系
所谓安装数据库服务器,只是在机器上装了一个数据库管理程序,这个管理程序可以管理多个数据库,一般开发人员会针对每一个应用创建一个数据库。
为保存应用中实体的数据,一般会在数据库创建多个表,以保存程序中实体的数据。
数据库服务器、数据库和表的关系如图所示:
数据在数据库中的存储方式
4.SQL语言
Structured Query Language, 结构化查询语言
非过程性语言(就是上一句语句与下一个语句没有关系)
美国国家标准局(ANSI)与国际标准化组织(ISO)已经制定了SQL标准
为加强SQL的语言能力,各厂商增强了过程性语言的特征
- 如Oracle的PL/SQL 过程性处理能力
- SQL Server、Sybase的T-SQL
- SQL是用来存取关系数据库的语言,具有查询、操纵、定义和控制关系型数据库的四方面功能。
二.Sql语句-----库、表操作
1.创建数据库
CREATE DATABASE [IF NOT EXISTS] db_name [create_specification[,create_specification] ...] create_specification: 7 [DEFAULT] CHARACTER SET charset_name | [DEFAULT] COLLATE collation_name
CHARACTER SET:指定数据库采用的字符集
COLLATE:指定数据库字符集的比较方式
查看mysql存储位置 :show global variables like "%datadir%"; z
这个可以查看到mysql 存放数据库的文件 可以查看此数据库的一些配置
例子
创建一个名称为mydb1的数据库。
create database mydb1;
创建一个使用utf8字符集的mydb2数据库。
create database mydb2 character set gbk;
创建一个使用utf8字符集,并带校对规则的mydb3数据库。
create database mydb3 character set utf8 collate utf8_bin
2.查看、删除数据库
显示数据库语句 |
SHOW DATABASES |
显示数据库创建语句 |
SHOW CREATE DATABASE db_name |
数据库删除语句 | DROP DATABASE [IF EXISTS] db_name |