zoukankan      html  css  js  c++  java
  • MySQL 插入,更新与删除数据,索引 学习笔记

    • 插入,更新与删除
      • 插入数据
        • 为表的所有字段插入数据,INSERT INTO table_name (column_list) VALUES (value_list); column的顺序可以不与表中定义的顺序相同,但是 value的顺序必须相同。插入数据时也可以不指定column。
        • 为表的指定字段插入数据。
        • 同时插入多条记录。INSERT INTO table_name (column_list) VALUES (value_list1),(value_list2),...,(value_listN);。
        • 将查询结果插入到表中 INSERT INTO table_name1 (column_list1) SELECT (column_list2) FROM table_name2 WHERE (condition)。
      • 更新数据  UPDATE table_name SET column_name = value1,column_name2=value2,....,column_nameN=valueN WHERE (condition);
      • 删除数据 DELETE FROM table_name [WHERE <condition>];
    • 索引
      • 索引简介 对表中一列或多列的值进行排序,使用索引可以提高数据库中特定数据的查询速度。索引是一个单独的,存储在磁盘上的数据结构,包含着对数据表里所有记录的引用指针。有BTREE和HASH两种存储类型,跟表的存储引擎相关,MyISAM和InnoDB存储引擎只能支持BTREE,MEMORY和HEAP可以支持者两种索引。普通索引和唯一索引,单列索引和组合索引,全文索引(只有MyISAM支持全文索引),空间索引(空间数据类型有GEOMETRY,POINT,LINESTRING,POLYGO)使用SPATIAL关键字进行扩展,只有MyISAM可以创建空间索引,且值必须为NOT NULL。
      • 创建索引
        • 创建表的时候创建索引
          • 创建普通索引    CREATE TABLE book (bookid INT NOT NULL, year_publication YEAR NOT NULL, INDEX(year_publication)); 使用explain语句查看索引是否创建成功。
          • 创建唯一索引    CREATE TABLE t1 (id INT NOT NULL, name CHAR(30) NOT NULL, UNIQUE INDEX UniqIdx(id));
          • 创建单列索引    CREATE TABLE t2 (id INT NOT NULL, name CHAR(30) NULL, INDEX SingleIdx(name(20)));
          • 创建组合索引    CREATE TABLE t3 (id INT NOT NULL, name CHAR(30) NOT NULL, age INT NOT NULL, info VARCHAR(255), INDEX MultiIdx(id,name,age(100)));
          • 创建全文索引    CREATE TABLE t4 (id INT NOT NULL, name CHAR(30) NOT NULL, age INT NOT NULL, info VARCHAR(255), FULLTEXT INDX FullTextIdx(info)) ENGINE=MyISAM;
          • 创建空间索引    CREATE TABLE t5 (g GEOMETRY NOT NULL, SPATIAL INDEX spatIdx(g))ENGIN=MyISAM;
        • 在已经存在的表上创建索引
          • 使用ALTER TABLE语句创建索引,ALTER TABLE book ADD INDEX BkNameIdx(bookname(30);
          • 使用CREATE INDEX创建索引,CREATE INDEX BkNameIdx ON book(bookname); CREATE UNIQUE INDEX UniqidIdx ON book (bookId);
        • 删除索引
          • 使用ALTER TABLE删除索引   ALTER TABLE table_name DROP INDEX index_name;
          • 使用DROP INDEX语句删除索引 DROP INDEX index_name ON table_name;
  • 相关阅读:
    ok
    Android设备激活量超10亿 3个月增长1亿台
    JavaWeb--文件的上传和下载
    JavaWeb--Listener
    JavaWeb--JSTL
    JavaWeb--自定义标签4--EL自定义函数
    JavaWeb--自定义标签4--带父标签的自定义标签
    codeforces 437B. The Child and Set 解题报告
    codeforces 437A. The Child and Homework 解题报告
    codeforces 435 B. Pasha Maximizes 解题报告
  • 原文地址:https://www.cnblogs.com/laiyuan/p/8318525.html
Copyright © 2011-2022 走看看