zoukankan      html  css  js  c++  java
  • 数据库单表操作

    # 数据库

    ## 1.1 概念

    数据库:db、database、存储数据的仓库,以文件形式存储数据。

    DBMS: Database Manager System(数据库管理系统)

    常见的数据库:

    1、**MYSQL**:免费的中小型数据库,Oracle公司收购

    2、**Oracle**:收费的大型数据库,Oracle公司

    3、SQL Server:微软的大型收费的数据库

    4、SQLite:移动端的嵌入式的小型数据库


    数据库的分类:

    1、关系型:

    * MYSQL
    *Oracle

    优点:通用的SQL语句,易于理解
    缺点:由于表结构复杂,大量数据的读写性能较差
    2、非关系型:

    * MongoDb
    * redis

    优点:读写性能较好,易于扩展
    缺点:学习成本和使用成本较高


    ## 1.2 结构

    类 ---> 表

    属性 --->字段、列
    对象 --->记录

    ## 1.3 语法

    1、一条语句可以分为单行或多行书写
    2、语句用分号结尾
    3、不区分大小写,但是关键字建议用大写
    4、注释:

    单行注释: --注释内容 或者 #注释内容(MYSQL特有)
    多行注释: /*注释内容*/


    ## 1.4 SQL语言

    SQL:结构化查询语言(Structured Query Language)

    分类:

    1、DDL:数据定义语言
    对库,表进行操作
    create、drop、alter

    2、DML:数据操作语言

    对记录进行增、删、改
    insert into、update、delete、set、from

    3、DQL:数据查询语言

    对记录进行查询
    select、where、 in、 on、limit、like、having、order by、
    group by、desc、asc


    4、DCL:数据库访问语言

    对数据库设置安全级别和访问权限
    revoke

    CRUD: create、 retrieve、 update、delete、


    # SQL

    ## 一、库的操作

    ### 1.1 数据库的创建

    直接创建:

    create database 库名;
    创建同时设置库的编码:

    create database 库名 character set 编码;

    先判断数据库是否已经存在,不存在才创建

    create database if not exists 库名;

    ### 1.2 数据库的查看

    1、查看管理系统中有哪些数据库

    show databases;

    2、查看数据库创建语句

    show create database 库名;


    ### 1.3 数据库的删除

    直接删除:drop database 库名

    先判断是否存在 存在就删除:

    drop database if exists 库名;

    ### 1.4 数据库的修改

    修改数据库的编码格式:

    alter database 库名 character set 编码


    ## 1.5 其他操作

    明确要使用的数据库:

    use 库名;

    ## 二、 表的操作

    ### 2.1 创建表

    create table 表明(字段1 类型 [约束],字段2 类型 [约束] 。。。。。);

    类型:

    1、int
    2、double
    3、varchar
    4、date: yyyy-MM-dd
    5、datetime: yyyy-MM-dd HH:mm:ss
    6、timestamp:时间戳yyyy-MM-dd HH:mm:ss
    如果timestamp没有设置值,那么这个值就是当前添加记录的时间


    ### 2.2 删除表

    直接删除:
    drop table 表名;

    先判断表是否存在,存在就删除

    drop table if exists 表名;


    ### 2.3 查看表

    查看当前库中的所有表

    show tables;

    查看指定表的表结构

    desc 表名;


    ### 2.4 修改表结构

    修改表名:

    alter table 表名 rename to 新表名;

    添加一列字段:

    alter table 表名 add 列名 类型 [约束];


    修改列名:

    alter table 表名 change 旧列名 新列名 类型[约束];

    修改列:

    alter table 表名 modify 列名 类型[约束]


    删除列:

    alter table 表名 drop 列名;


    ### 2.5 其他操作

    复制表结构:

    create table 表名 like 想复制的表名;


    ## 三、记录的操作

    ### 3.1 添加记录

    向记录中的所有字段添加值:

    insert into 表名 values(值1,值2,值3.。。。)

    向记录中的指定字段添加值:

    insert into 表名 (字段1,字段。。。)values(值1,值。。。。);


    ### 3.2 修改记录

    修改所有记录的指定字段值:

    update 表名 set 字段名1 = 字段值1,字段名2 = 值2,。。。。;

    修改指定记录的指定字段值:

    update 表名 set 字段名1 = 字段值1,字段名2 = 值2,。。。 where 条件;

    ### 3.3 删除记录

    删除指定记录:

    delete from 表名 where 条件;

    删除所有记录:

    delete from 表名;(逐条删除表里的所有记录,性能较差)

    truncate table 表名;(一次性删除整张表,性能较好,推荐使用,
    当再次使用该表时,该表会会根据原始状态重新构建一张新表)

    ### 3.4 查询记录

    查询所有记录的所有字段信息:

    select * from 表名;

    查询所有记录的指定字段信息:

    select 字段1,字段2.。。 from 表名;

    查询指定记录的所有字段信息:

    select * from where 条件;

    查询指定记录的指定字段信息:

    select 指定字段 from where 条件;

    代码改变生活
  • 相关阅读:
    ExecuteScalar requires the command to have a transaction when the connection assigned to the command is in a pending
    如何从vss中分离程序
    String or binary data would be truncated
    the pop3 service failed to retrieve authentication type and cannot continue
    The POP3 service failed to start because
    IIS Error he system cannot find the file specified _找不到页面
    pku2575Jolly Jumpers
    pku2940Wine Trading in Gergovia
    pku3219二项式系数
    pku1029false coin
  • 原文地址:https://www.cnblogs.com/LTJAVA/p/11870746.html
Copyright © 2011-2022 走看看