MySQL数据库学习第一天笔记

1.什么是数据库?
   答:高效的存储和处理数据的介质
2数据库的分类:关系型和非关系型数据库
3.关系型数据库:大型:Oracle, DB2  中型:MySQL , SQLserver  小型:Accsess
4.非关系型数据库:memcached, mongodb, redis
5.两种数据库的区别:关系型数据库:安全(保存磁盘基本不会丢失),容易理解,比较浪费空间
                                 非关系型数据库:效率高,不安全(断电丢失)
6.关键字说明:
    1)数据库:database
    2)数据库系统:DBS(database System)是一种虚拟系统,将多种内容关联起来的称呼
    3)DBS=DBMS+DB
    4)DBM(database Managerment System)数据库管理系统
    5)DBA(database administrator)数据库管理员
    行/记录:row/record 
    列/字段:column/field
7.SQL 
    SQL: Structured  Query Language  (结构化查询语言)
    SQL分为三个部分:
            DDL:Data Definition Language  数据库定义语言  代表语言:create  drop alter 等
            DML:Data Manipulate Language 数据库操作语言  代表语言 :select  update  delete 等
            DCL:Data Control Language  数据库控制语言 代表语言: grant  revoke 等
            SQL是关系型数据库的操作指令,SQL是一种约束,但不强制
8.Mysql 数据库
        1)MySQL是一种C/S结构软件:客户端/服务器,想访问服务器必须通过客户端(服务器一直在运行,客户端在需要使用时运行)
        2)交互方式:
            1.客户端连接认证:连接服务器,认证身份
            2.发送SQL指令
            3.服务器接收SQL指令,处理SQL指令,返回结果
            4.客户端接收结果:显示结果
            5.断开连接:释放资源
9.MySQL服务对象:系统(DBMS)-->数据库(DB)-->数据表(Table)-->字段(field)

10.SQL基本操作:
        1.基本操作:CRUD
        2.将SQL的基本操作对象进行分类:分为三类:库操作,表操作,数据操作
11.库操作:
    1)创建数据库:
        1、基本语法:Create database  数据库名字  [库选项];   
        2、库选项:用来约束数据库,分为两个选项:charset/character  具体字符集(数据库存储的编码格式),常用字符集:GBK和UTF8   校对集设定:collate  具体校对集
        3、--+空格 #  数据库注释
        4、创建数据库语句:create database  mydatabase  charset utf8;
        5、创建关键字数据库需使用反引号  '   '
        6、创建中文数据库需要加:set name gbk;
        7、查询数据库:show database like 'tes_%' (查询一tes开头的所有数据库)
    2)更新数据库:
        1、数据库名字不可以更改
        2、数据库的修改仅限于库选项:字符集和校对集
        3、修改数据库字符集语法:alter database  数据库名称  charset  修改的编码格式(GBK  UTF8等);
    3)删除数据库:
        1、删除数据库语法:drop database  数据库名称;
        2、注意事项:删除数据库应是先进行数据库备份后操作(删除不可逆);
12.表操作:
    1)表与字段是密不可分的。
    2)创建数据表语法:create table [if not exists] 表名(
      字段名字  数据类型,
      字段名字  数据类型,
      字段名字  数据类型  最后一行不需要逗号    
    )[表选项];  
        例子: create  table if not  exists  student(
            name  varchar(10),
            gender  varchar(10),
            number  int
                                           )charset utf8;
    3)  if  not exists:  如果表名不存在,那么久创建,否则不执行,检查功能
    4)表选项:控制表的表现
        字符集:charset   具体字符集
        校对集:collate  具体校对集
        存储引擎:engine  具体的存储引擎(innodb  myisam)
    5)查询所有表:show tables ;
    6)查询以什么开头或一什么结尾:show tables like '%_?'   or   show tables like '?_%';
    7)查看表结构:查看表中的字段信息    show create table student\G/g (查看表的结构横向和纵向)
            1、查看表结构语句:Desc/describe/colums from 表名
13.修改数据表:
        1)表本身存在,还包含字段,表的修改分为两个部分,修改表本身和修改字段
        2)修改本身:
            1、表本身可以修改:表名和表选项
            2、修改表名语句:rename  tables 老表名  to 新表名;例句:  rename tables student to mystudent;
            3、修改表选项语法:alter table 表名 charset utf8/gbk; 例句:alter table student charset = utf8;
        3)修改字段:操作有:新增,修改,重命名,删除
            1、新增字段:
                1.alter table 表名 add [column] 字段名 数据类型 [列属性][位置]
                    位置:字段可以存放在表中的任意位置
                    first:第一         例句: alter table mystudent add id int  first;
                    after:在哪个字段字后,默认是在最后个字段;例句: alter table mystudent add sex  varchar(20);
            2、修改字段:修改通常是修改属性或者数据类型;
                1、alter table 表名 modify 字段名 数据类型 (属性) [位置]; 例句:alter table mystudent modify age varchar(10) alter id;
            3、重命名字段:
                1、alter table  表名 change 旧字段名  新字段名  数据类型(属性 [位置]; 例句:alter table  mystudent  change gender  email  varchar(22) after name;
            4、删除字段:
                1、alter table 表名 drop 字段名; 例句 : alter table mystudent drop sex;
14.删除数据表: drop table  表名1,表名2,...;可以删除多张表;
    1)当删除数据表指令执行指令之后会发生什么?
        1、在表空间中没有了指定的表(数据也将不存在了)
        2、在数据库对应的文件夹下,表对应的文件(与存储引擎有关)也会被删除。(注意删除有危险,操作需谨慎,删除不可逆!!!)
15、数据操作:
    1)新增数据:
        1、有两种方案:
           1.方案一:给全表字段插入数据,不需要指定字段列表,要求数据的之出现的顺序必须与表中的设计的字段一致,凡是非数值数据,都需要使用引号;
            语句结构:insert into 表名 values(值列表1),(值列表2),(值列表3);  可以一次性插入多条记录;
                例句:insert into mystudent values(2,22,'大龙','123@qq.com'),(2,20,'小龙','12345@qq.com');
           2.方案二:给部分字段插入数据,需要选定字段列表,字段列表出现的顺序与字段的顺序无关,但是之值列表的顺序与选定的字段的顺序一致;
            语句结构:insert into 表名 (字段列表) values (值列表1),(值列表2),(值列表3);
                例句:insert into mystudent (id,age,email,name) values(3,10,'4646@163.com','小宝'),(4,12,'4646@163.com','小宝');

    2)查看数据:
        1、查看所有数据:select * from 表名;    
        2、查看指定数据:select 指定字段  from 表名 ;
    3)更新数据:
        1、update 表名 set  字段=值  [where 条件] 字段=值    (建议都有where;要不是更新全部)
            例句:update mystudent set age=100 where name="大龙";
    4)删除数据:
        1、delete from 表名 where 字段=值;(删除不可逆,操作需谨慎!!!)
            例句:delete from mystudent where id=2 and name="大龙";

整理不易,小小打赏,小编会很开心,哈哈哈哈哈哈。。。。。。。。。。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值