zoukankan      html  css  js  c++  java
  • MySQL 基础内容

    创建数据库

    对于表的操作需要先进入库 use 库名;

    -- 创建一个名为 inana_db 的数据库,数据库字符编码指定为 utf8
    create database inana_db character set utf8;
    drop database inana_db; -- 删除 库名为samp_db的库
    show databases;        -- 显示数据库列表。
    use inana_db;    -- 选择创建的数据库samp_db
    show 表名;       -- 显示samp_db下面所有的表名字
    describe 表名;   -- 显示数据表的结构
    delete from 表名; -- 清空表中记录

    创建数据库表

    使用 create table 语句可完成对表的创建, create table 的常见形式:语法:create table 表名称(列声明);

    CREATE TABLE table_name (
      id   int   AUTO_INCREMENT primary key,
      password   varchar(32)       NOT NULL   DEFAULT ' '   COMMENT '用户密码',
      reset_password  tinyint(32)       NOT NULL   DEFAULT 0   COMMENT '用户类型:0-不需要重置密码;1-需要重置密码',
      mobile varchar(20)       NOT NULL   DEFAULT ''   COMMENT '手机',
      -- 创建唯一索引,不允许重复
      UNIQUE INDEX idx_user_mobile(`mobile`)
    )CHARSET=utf8;


    数据类型的属性解释
    NULL:数据列可包含NULL值;
    NOT NULL:数据列不允许包含NULL值;
    DEFAULT:默认值;
    PRIMARY:KEY 主键;
    AUTO_INCREMENT:自动递增,适用于整数类型;
    UNSIGNED:是指数值类型只能为正数;
    CHARACTER SET name:指定一个字符集;
    COMMENT:对表或者字段说明;

    增删改查

    SELECT 语句用于从表中选取数据。
    语法:SELECT 列名称 FROM 表名称
    语法:SELECT * FROM 表名称

    Update 语句用于修改表中的数据。
    语法:UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值

    INSERT INTO 语句用于向表格中插入新的行。
    语法:INSERT INTO 表名称 VALUES (值1, 值2,....)
    语法:INSERT INTO 表名称 (列1, 列2,...) VALUES (值1, 值2,....)

    DELETE 语句用于删除表中的行。
    语法:DELETE FROM 表名称 WHERE 列名称 = 值

    WHERE 子句用于规定选择的标准。
    语法:SELECT 列名称 FROM 表名称 WHERE 列 运算符 值

    IN - 操作符允许我们在 WHERE 子句中规定多个值。
    IN - 操作符用来指定范围,范围中的每一条,都进行匹配。IN取值规律,由逗号分割,全部放置括号中。
    语法:SELECT "字段名"FROM "表格名"WHERE "字段名" IN ('值一', '值二', ...);

    ORDER BY
    语句默认按照升序对记录进行排序。
    ORDER BY - 语句用于根据指定的列对结果集进行排序。
    DESC - 按照降序对记录进行排序。
    ASC - 按照顺序对记录进行排序。

    as - 可理解为:用作、当成,作为;别名 一般是重命名列名或者表名。
    语法:select column_1 as 列1,column_2 as 列2 from table as 表

    JOIN:如果表中有至少一个匹配,则返回行
    INNER JOIN:在表中存在至少一个匹配时,INNER JOIN 关键字返回行。
    LEFT JOIN:即使右表中没有匹配,也从左表返回所有的行
    RIGHT JOIN:即使左表中没有匹配,也从右表返回所有的行
    FULL JOIN:只要其中一个表中存在匹配,就返回行

    常用函数

    COUNT 让我们能够数出在表格中有多少笔资料被选出来。
    语法:SELECT COUNT("字段名") FROM "表格名";

    MAX 函数返回一列中的最大值。NULL 值不包括在计算中。
    语法:SELECT MAX("字段名") FROM "表格名"

    添加索引index

    语法:ALTER TABLE 表名字 ADD INDEX 索引名字 ( 字段名字 )

    主键索引(PRIMARY key)
    语法:ALTER TABLE 表名字 ADD PRIMARY KEY (字段名字)

    唯一索引(UNIQUE)
    语法:ALTER TABLE 表名字 ADD UNIQUE (字段名字)

    创建后表的修改

    添加列       语法:alter table 表名 add 列名 列数据类型 [after 插入位置]

    修改列       语法:alter table 表名 change 列名称 列新名称 新数据类型;

    删除列     语法:alter table 表名 drop 列名称;

    重命名表    语法:alter table 表名 rename 新表名;

    清空表数据     语法:delete from 表名;

    删除整张表   语法:drop table 表名;

    删除数据库     语法:drop database 数据库名;

  • 相关阅读:
    code1002 搭桥
    FastJSON的使用方法
    关于最近一些问题和知识点的回顾的随笔
    Spring不能给sessionFactory注入值的问题,以及org.hibernate.HibernateException: createQuery is not valid without active transaction异常
    Struts2+Spring3+Hibernate4中,数据源应配置在Spring下,否则有异常:Cannot unwrap to requested type [javax.sql.DataSource]
    SSH2框架ClassNotFoundException:org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter的问题
    nextLine()紧跟在nextXXX()后面读取不到数据的问题,以及两者的小结
    Android设置控件的透明度
    Android的布局文件遇到Exception raised during rendering: java.lang.System.arraycopy([CI[CII)V问题
    《数学之美》读书笔记
  • 原文地址:https://www.cnblogs.com/inana/p/mysql.html
Copyright © 2011-2022 走看看