1、 MySQL架构

C/S: client / server架构

MySQL DBMS(Data Bank Management System): 数据库管理系统

客户端 <---> 服务器 ---> 数据库 ---> 数据表 ---> (记录/行,字段/列)

MySQL学习笔记_1_MySQL数据库管理系统概述_数据库服务器

2、 数据库程序员需要精通的操作:(不是DBA(数据库管理员))

一、为项目设计表

二、使用SQL语句(SQL语句编程)

其他、都可以通过工具来完成。

3、MySQL文件结构

  配置文件:my.ini: 可以通过修改该文件,来配置MySQL相应的属性

bin文件目录: 保存了MySQL所有的命令

data文件目录: 保存了MySQL所包含的库,各个库里面包含的是相应的 表!

【备份时,只需将data文件夹打包备份出去就可以了,Linux下为var/】

4、SQL语句操作

SQL(Structured Query Language)是一种高级的非过程化的语言。

SQL语句:结构简单,功能强大,简单易学!

按功能划分:

DDL:创建数据库,数据表的语句

DML:操作数据的语句

DQL:数据库查询语句

DCL:数据控制的语句,可以工具执行。

如: \s 查看状态

show databases; 查看所有库

show tables;  查看所有表

desc tables; 查看表结构

show variables; 查看配置文件中的变量

DDL: 1、执行SQL语句,首先要连接到数据库服务器上:

mysql -h localhost -u root -p #以root用户登录到本地数据库

\s:查看数据库状态

show variables;:查看系统中默认配置的变量,谨记:以;结束

show variables like 'time_zone';

show variables like 'port'; : 查看端口

show databases; : 显示系统中所有的库

2、创建数据库

create database [name];

如: create database boost;

3、删除数据库

drop database [name];

如: drop datebase boost;

  拓展: cteate database if not exists boost;

drop database if exists boost;

4、创建一张数据表

create table boost.users(id int,name char(30),age int,sex char(3)); 

5、选择一个库作为默认数据库

use boost;

6、查看所有的表

show tables;

7、查看表结构

desc users;

8、删除表

drop table users; // drop table if exists users;

9、继续在默认数据库中创建

create table users(id int,name char(32),age int,sex char(2));

拓展:

       create table is not exists users(id int,name char(32));

10、再创建一张表

create table is not exists articles(title char(64));

DML: 11、插入数据

insert into users values('2012','xiaofang','34','nan');

或:  insert into users values(2012,'xiaofang',34,'man'); //弱类型检查

最佳实践: insert into users(id,name,age) values('2334','wangwu','56');

即可插入部分,又可不按顺序插入。

12、更新数据信息

update users set name='AShun' where id='2012';

推广: update users set name='XiaoChang',sex='Nv' where id='2012';

13、删除数据信息

delete from users where id='2012';

推广: delete from users //全部删除

DQL: 14、查看数据信息,查询语句

select * from users;

5、帮助的使用

1、查看帮助所能够提供的信息

? contents;

2、进一步查看详细信息

? data types; //需是上面所列出的信息类型

3、更进一步查看具体信息

? int;

? show;

? create tables; // 查看创建表结构语法

? update;