Mysql学习笔记数据库概念
Linux Apache Mysql PHP 的缩写。
数据库的概念:
1广义上:数据的集合。
2.计算机中的数据库:数据库系统,是数据管理和数据库系统的组合。
DBS = DBMS + DB
Database System = 数据库管理系统(DBMS database manager system)+数据库(Database) /*+ 数据库管理员*/
数据库:
大量数据集合的高效管理方案,按照数据结构来组织、管理。
关系型数据库系统:
建立在关系模型上的数据库系统。
关系模型: 1. 数据结构可以规定 2. 数据之间的关系可以设置。
SQL -- structured query language 结构化查询语言
创建数据库
createa database first_db; // 必须有语句结束符,客户端要求
数据库不区分大小写,推荐用下划线命名方式,不用驼峰命名。
create database `1234`; // 特殊字符串 注意用的是反引号。
create database `create`; // 关键字。建议在数据库名的时候加上反引号,保证正确解析。
create database `中文数据库名`; // 中文也可以 但是不建议。在存储的时候库名是编码之后的字符。
每创建一个数据库,在库文件里会有一个opt文件(选项文件)。
查询数据库
show databases; //查看当前存在的数据库。
show create database db_name; // 查看数据库的创建语句。可以查看默认字符集。
drop database db_name; // 删除数据库,慎用。
Alter database db_name character set gbk; // 修改数据库的字符集。
数据库的改名问题:
1. 重命名 数据库的文件夹。
2. 将数据库内容全部导出,新建一个数据库,将内容导入,删除旧库。
3.创建一个新的数据库,将旧数据库内容的表,都移动(重命名)到新的数据库内,删除旧数据库。
创建表
use db_name; // 指明数据库,不影响操作其他的数据库。
create table tb_name(列结构)[表选项]
列定义:
列名 列的数据类型 [列的属性(约束)], // 多个列用' , '分割。
例如:
create table test.java_class ( // 点语法,用于指明表属于哪个数据库。
class_no varchar(20), // varchar是字符串类型,是字符长度,不是字节长度。
date_start date // 最后一个属性不能有 ' , '
);
表前缀:
show tables [like 'pattern']; // like pattern 的部分可选
show tables like 'exam_%'; // %是通配符