• Try TiDB
    • 创建数据库
    • 创建表
    • 创建索引
    • 增删改查数据
    • 创建用户

    Try TiDB

    TiDB 支持 SQL92 标准并兼容 MySQL 语法,目前已经实现了大多数常用的 MySQL 语法。用户可以直接使用现有的 MySQL 客户端连接。如果现有的业务已经基于 MySQL 开发,大多数情况不需要修改代码即可直接替换单机的 MySQL。

    创建数据库

    使用 CREATE DATABASE 语句可完成对数据库的创建, 创建命令的格式如下:

    1. CREATE DATABASE 数据库名 [其他选项];

    例如我们需要创建一个名为 samp_db 的数据库, 在命令行下执行以下命令:

    1. CREATE DATABASE IF NOT EXISTS samp_db;

    查看 TiDB 中的所有数据库:

    1. SHOW DATABASES;

    删除数据库:

    1. DROP DATABASE samp_db;

    创建表

    使用 CREATE TABLE + 表名 + 列名 + 数据类型 + 约束。具体例子如下:

    1. CREATE TABLE person (
    2. number INT(11),
    3. name VARCHAR(255),
    4. birthday DATE
    5. );

    如果表已存在,则使用关键词 IF NOT EXISTS 可以防止发生错误。

    1. CREATE TABLE IF NOT EXISTS person (
    2. number INT(11),
    3. name VARCHAR(255),
    4. birthday DATE
    5. );

    查看建表语句

    1. SHOW CREATE table person;

    查看表所有的列:

    1. SHOW FULL COLUMNS FROM person;

    删除表

    1. DROP TABLE person;

    或者

    1. DROP TABLE IF EXISTS person;

    查看 samp_db 中的所有表:

    1. SHOW TABLES FROM samp_db;

    创建索引

    对于值不唯一的列,可以使用 CREATE INDEXALTER TABLE

    1. CREATE INDEX person_num ON person (number );
    2. ALTER TABLE person ADD INDEX person_num (number );

    对于值唯一的列可以创建唯一索引:

    1. CREATE UNIQUE INDEX person_num ON person (number);
    2. ALTER TABLE person ADD UNIQUE person_num ON (number);

    可利用 ALTER TABLEDROP INDEX 语句来删除索引。类似于 CREATE INDEX 语句,DROP INDEX 可以在 ALTER TABLE 内部作为一条语句处理,语法如下。

    1. DROP INDEX person_num ON person;
    2. ALTER TABLE person DROP INDEX person_num ;

    查看表内所有索引:

    1. SHOW INDEX FROM person ;

    增删改查数据

    利用 INSERT 插入数据

    1. INSERT INTO person VALUES("1","tom","20170912");

    利用 SELECT 检索数据

    1. SELECT * FROM person;
    2. +--------+------+------------+
    3. | number | name | birthday |
    4. +--------+------+------------+
    5. | 1 | tom | 2017-09-12 |
    6. +--------+------+------------+

    利用 UPDATE 修改表内数据:

    1. UPDATE person SET birthday='20171010' WHERE name='tom';
    2. SELECT * FROM person;
    3. +--------+------+------------+
    4. | number | name | birthday |
    5. +--------+------+------------+
    6. | 1 | tom | 2017-10-10 |
    7. +--------+------+------------+

    利用 DELETE 删除表内数据:

    1. DELETE FROM person WHERE number=1;
    2. SELECT * FROM person;
    3. Empty set (0.00 sec)

    创建用户

    使用 CREATE USER 语句创建一个只在本地登录的用户 tiuser,密码为 123456

    1. CREATE USER 'tiuser'@'localhost' IDENTIFIED BY '123456';

    授权用户可查询 samp_db 库下的表:

    1. GRANT SELECT ON samp_db .* TO 'tiuser'@'localhost';

    查询 tiuser 用户的授权:

    1. SHOW GRANTS FOR tiuser@localhost;

    删除用户

    1. DROP USER 'tiuser'@'localhost';