zoukankan      html  css  js  c++  java
  • 数据库小结一

    数据库总结

    什么是数据库

    数据库即存放数据的仓库

    数据库是长期存放在计算机内的有组织的可共享的数据集合

    优点

    1. 数据稳定性:一套服务所在的机器崩溃了不会影响数据和另外的服务

    2. 数据一致性:所有数据一起,所有程序操作的数据都是统一的

    3. 并发:良好的支持并发

    4. 效率:使用数据库对数据进行增删改查的效率高很多

    关系型数据库

    Mysql oracle sun db2

    非关系型数据库

    没有能帮我们维护数据之间的关系

    常见存储介质为内存

    mongoDB redis

    数据库重要概念

    数据(Column) 文件中的某个字符串

    记录(Row) 文件中的某一行

    表(table) 某个文件

    库(database) 文件夹

    DBMS 数据库管理系统(数据库软件)

    数据库服务器 运行DBMS的计算机

     

    常见参数

    -h 主机名称

    -p 指定端口 默认是3306 可以不写

    -u 制定用户名

    -p 制定密码

    添加环境变量

    注册 mysqld --install

    删除 sc delete mysql

    启动服务 net start mysql

    停止服务 net stop mysql

    查找某个进程

    tasklist | findstr mysqld

    杀死进程

    taskkill/f/pid 1111

    管理员密码设置

    1.指导原始密码

    1.1 登录到mysql制定更新语句

    update user set password = password("123") where host = "localhost" and user = "root"

    刷新

    1.2 mysqladmin工具

    mysqladmin -uroot -p123 password 321

    -p是原始密码

    2.不知道原始密码

    2.1 删除权限相关的文件

    2.2 跳过授权表

    手动启动mysql制定参数

    mysqld -skip-grant-tables

    update user set password = password("111") where host = "loaclhost" and user = "root"

    重启mysql就可以

    重启mysqld

    库的操作

    #切换数据库
    use 数据库名称 可以不加分号

    # 查看所有数据库
    show databases;
    show create databases;

    # 创建新的数据库
    create database 数据库名称
    create database 数据库名称 charset utf8; 制定编码方式

    # 删除数据库
    drop database 数据库名称

    # 修改数据库编码 可以进入到数据库文件夹修改db.opt
    # 第一行是编码 第二行是排序规则

    # 修改数据库名 可以直接修改对应的文件夹名称

    表的操作

    show 查看

    show create table 表名称

     

    删除 drop

    清空 truncate table 名称

     

    添加字段 alter table 表名 add 列名称 数据类型;

    删除字段 alter table 表名 drop 列名称

    修改数据类型 alter table 表名 modify 列名称 新的数据类型

    修改列 alter table 表名 change 旧的列名 新的列名 新的类型;

    修改表的名称 rename table 旧名称 to 新名称;

    修改编码 alter table 表名 charset utf80;

    配置文件的使用

    配置文件需要放在安装目录的根目录,bin同一级

    # 客户端 除了mysql之外的 客户端的配置修改之后 只需要退出重新连接即可
    [client]
    user = root
    password = 111
    default-character-set = utf8

    # 服务器端配置 需要重启服务器
    [mysqld]
    character-set-server = utf8

    2.表的分类 数据库引擎

    常用的innodb

    数据库引擎指的是真正的负责存储数据的模块

     

    增删改查

    插入数据
    insert into 表名 values(v1,v2...)# 该方式必须保证插入的数据个数与表格字段一一对应
    查询
    select * from 表名
    select 字段 from 表名 where 条件;
    更新
    update 表名 set 新值,值; 修改所有记录
    update 表名 set 新值,值 where 条件;

    删除数据
    delete from 表名; 删除所有记录
    delete from 表名 where 条件; # 删除满足条件的记录
    修改数据库语法
    alter database 数据库名称 charset utf8;
    select database() 查看当前库


     

    mysql中的数据类型

    整形

    tinyint 1个字节 无符号的8bit 最大255 有符号7个bit 127 -128

    smallint 2个

    mediumint 3个

    int 4个 最常用 如果你的数据超过10位 用bigint

    bigint 8个

    浮点型

    两种不精确的小数

    float 可以精确到 大约5位

    double 比float更精确

    如果对精确度要求比较高 需要使用decimal 类型

    decimal 需要指定 位数如下: 位数不包括小数点

    decimal(65,30) 总长最大65 小数30

    字符串

    char 定长字符串

    优点:读取速度快

    缺点:浪费磁盘空间

     

    varchar 长度可以变的字符串·

    优点:节省空间

    缺点:速度慢

    枚举和集合

    枚举是提前规定一个范围 你的值只能是其中之一 多选一

    集合是以前规定一个范围 你的值可以是其中的多个 多选多

    集合在插入数据时,多个值用逗号隔开 ,但她们必须包含在同一个字符串内

    日期和时间

    year

    data

    time

    这三种都可以使用字符串或者数字两种方式输入值

    datetime

    datastamp

    这两种只能使用字符串输入

  • 相关阅读:
    什么样的代码称得上是好代码?
    九年程序人生 总结分享
    Docker入门 第一课 --.Net Core 使用Docker全程记录
    阿里云 Windows Server 2012 r2 部署asp.net mvc网站 平坑之旅
    Visual studio 2015 Community 安装过程中遇到问题的终极解决
    Activiti6.0 spring5 工作流引擎 java SSM流程审批 项目框架
    java 进销存 库存管理 销售报表 商户管理 springmvc SSM crm 项目
    Leetcode名企之路
    24. 两两交换链表中的节点
    21. 合并两个有序链表
  • 原文地址:https://www.cnblogs.com/zrx19960128/p/11203839.html
Copyright © 2011-2022 走看看