mysql常见操作

1 mysql常用术语

    1) 数据库  database (***)

    2) 表  table  (***)

    3) 行(row)和列(column)

    4) 记录 (record) 一个数据行  就是一条记录

    5)字段(field) 每个列 就是一个字段

    备注: 结构化查询语言SQL(Structured query language),

          操作关系数据库的通用语言,用于执行数据的检索和其他操作。

    数据库 =》 表 =》 记录(行)

2 mysql安装

    1) 下载 phpStudy 集成工具

    2) 下一步 安装 点击启动 (绿色代表成功)

    启动会同时启动两个东西:

        apache:  这是集成的一个服务器  端口是 80

        mysql:  这是数据库  端口是 3306

3 连接数据库

    语法: mysql -h主机名  -u用户名 -p密码

    mysql –hlocalhost –uroot –proot

    测试是否连接成功:

        show databases;

    说明: 需要配置环境变量, 把以下路径 放入环境变量

        C:\phpStudy\PHPTutorial\MySQL\bin

4 数据库的操作 (**)

    1) 查看数据库列表

        show databases;

    2) 创建数据库

        create database 数据库的名字;

        例子: create database web;

    3) 切换(使用数据库)

        use 数据库名称;

        例子: use web;

    4) 删除数据库

        drop database 数据库的名字;

        例子: drop database web;

    5) 修改数据库的选项(一般修改编码)

        alter database 数据库的名字  修改内容

        例子: alter database web charset=gbk;

    补充: 查看创建数据库的一些信息

    6) show create database 数据库的名字

        例子: show create database web;

5. 表的基本操作(*****)

    1) 创建表

        语法:

            create table 表名 (

                字段名称 数据类型和长度 属性修饰,

            字段名2 字段类型2 属性修饰2

            )[表选项]

        例子:

            create table student (

                id int primary key auto_increment,

                name varchar(50),

                age int,

                sex varchar(10)

            );

            create table teacher (

                name varchar(50),

                age int,

                sex varchar(10)

            );

    2) 查看当前数据库有哪些表

        show tables;

    3) 查看表的结构

        desc 表的名字;

        例子: desc student;

    4) 删除表

        drop table [if exists] 表名

        例子: drop table if exists teacher;

    补充:

        5)修改表:

            alter table 表名 选项=新值

            例子: alter table student charset=utf8;

        6)查看建表的一些信息:

            show create table 表的名字

            例子: show create table student;

6 记录的基本操作 (******)

    1) 增加记录(插入数据) ------ 增

        语法: insert into 表名 (字段列表) values (值列表)

        例子: insert into teacher(name, age, sex) values('李寻欢', 35, '男');

              insert into teacher(name, age, sex) values('xunhuanLi', 35, 'man');

              insert into student(name, age, sex) values('小张', 20, '男');

              insert into student(name, age, sex) values('小李', 21, '女');

              insert into student(name, age, sex) values('小王', 22, '男');

        补充: 

              insert into 表明 values (值列表)  // 参数一定要按照顺序

              例子:  insert into teacher values('老王', 35, '男');   

                    insert into student values(default,'小强', 18, '男'); 


              注意: 如果使用这种 省略字段列表的方式 需要使用 default 或 null 占位

        dos控制台中文编码问题 (*****)

            在插入数据之前 set names gbk;


    2) 查询数据 (*******) ------- 查

        a) 基本查询:

            语法: select 字段列表 from 表的名字;

            例子: select * from student;  // 查询表里面的所有字段

                  select name from student;  // 查询表里面的name字段 

                  select age from student;  // 查询表里面的age字段 

                    补充: 查询出来 取别名

                    select 字段名 as 别名 from 表名;

                    例子: select name as n from student;

        b) 带条件查询

            语法:  select 字段列表 from 表的名字 where 条件

            例子: select * from student where sex = '女';

                  select * from student where sex <> '女';

                  select * from student where age > 18;

                  select * from student where age < 21;

                  select * from student where age >= 18;

                  select * from student where age <= 21;

                  select * from student where age BETWEEN 20 AND 22;  // 在什么之间

                  select * from student where age > 18 and sex='女'; // 并且

                  select * from student where age > 18 or id=6;  // 或者

                    select * from student where name LIKE '小%';  // 正则匹配以。。开头的

                    select * from student where name LIKE '老%';

                    select * from student where name LIKE '%强';  // 正则匹配以。。结尾的

                    select * from student where name LIKE '%李';

                    select * from student where name LIKE '%李%';  // 包含这个字符的

                    select * from student where name LIKE '%王%';

    3) 删除数据 (****)------  删

        语法: delete from 表名 [where 条件]

        例子: delete from student where sex = '女';  // 删除所有性别为女的数据

        例子: delete from student where id = '8';  // 删除id = 8数据

        备注: 如果不写条件 代表删除所有数据

            例如: delete from student;  // 删除 student 表 所有数据

    4) 修改数据 (****) -----改

        语法: update 表名 set 字段=值, 字段=值 [where 条件表达式];

        例子: update student set age = 38, sex = '女';

              update student set age = 8, sex = '男' where id = 1;

7 数据类型

    商品表 (关键字 可以使用反引号)

    create table `goods` (

        id int primary key auto_increment,

        `sort` tinyint unsigned,

        name varchar(100),

        price float(10, 2),

        `desc` text,

        ctime TIMESTAMP DEFAULT CURRENT_TIMESTAMP

    );

    insert into goods(name, price, `desc`) values('ipone18', 9999.999, '这是一个手机1');

    insert into goods(name, price, `desc`) values('ipone19', 8888.999, '这是一个手机2');

    insert into goods(name, price, `desc`) values('ipone20', 7777.999, '这是一个手机3');

    补充: 查询结果排序

    select * from goods order by ctime asc;  // 升序 默认

    select * from goods order by ctime desc; // 降序排列

    select * from goods where 1 order by ctime desc;  // 条件可以拼接 order by 只能在最后

你可能感兴趣的:(mysql常见操作)