一、库操作

1、创建数据库
-- 创建一个名为“my_test”的数据库-- 语法CREATE DATABASE dbname;-- 实例CREATE DATABASE my_test;-- 创建数据库时判断是否存在,不存在则创建-- 语法CREATE DATABASE IF NOT EXISTS dbname;-- 实例CREATE DATABASE IF NOT EXISTS my_test;
2、查看数据库
-- 查询所有数据库-- 语法SHOW DATABASES;-- 查询某个数据库的定义信息-- 语法SHOW CREATE DATABASE dbname;-- 实例SHOW CREATE DATABASE my_test;
3、选择数据库
-- 语法USE dbname;-- 实例USE my_test;
4、删除数据库
-- 语法DROP DATABASE dbname;-- 实例DROP DATABASE my_test;

二、表操作

1、表(创建、修改、查看、删除)
-- column_name 参数规定表中列的名称。-- data_type 参数规定列的数据类型(例如 varchar、integer、decimal、date 等等)。-- size 参数规定表中列的最大长度。
-- 创建新表-- 语法CREATE TABLE table_name(column_name1 data_type(size),column_name2 data_type(size),column_name3 data_type(size),....);-- 实例CREATE TABLE User(user_id varchar(255),user_name varchar(255),age int,address varchar(255));
-- 根据已有的表创建新表-- 使用旧表创建新表,创建新表时不导入旧表数据-- 语法CREATE TABLE table_new LIKE table_old;-- 创建新表同时导入旧表数据-- 语法CREATE TABLE table_new AS SELECT column1,column2… FROM table_old WHERE 1=1;
-- 修改表名-- 语法ALTER TABLE old_table_name RENAME TO new_table_name;-- 实例ALTER TABLE User RENAME TO new_User;
-- 查看表结构-- 语法DESC table_name;-- 实例DESC User;
-- 查看创建的新表-- 语法SHOW CREATE TABLE table_name;-- 实例SHOW CREATE TABLE User;
-- 删除表-- 语法DROP TABLE table_name;-- 实例DROP TABLE User;-- 语法:判断表是否存在,存在则删除DROP TABLE IF EXISTS table_name;-- 实例DROP TABLE IF EXISTS User;
2、列(添加、修改、删除)
-- column_name 参数规定表中列的名称。-- data_type 参数规定列的数据类型(例如 varchar、integer、decimal、date 等等)。-- size 参数规定表中列的最大长度。
-- 添加列-- 语法ALTER TABLE table_name ADD column_name data_type(size);-- 实例ALTER TABLE User ADD City varchar(255);
-- 删除列-- 语法ALTER TABLE table_name DROP column_name;-- 实例ALTER TABLE User DROP City;
-- 修改列数据类型或数据类型长度-- 语法ALTER TABLE table_name MODIFY column_name data_type(size);-- 实例ALTER TABLE User MODIFY City varchar(512);
3、主键(添加、删除)
-- 添加主键-- 语法ALTER TABLE table_name ADD primary key(column_name);-- 实例ALTER TABLE table_name ADD primary key(UserID);-- 删除主键-- 语法ALTER TABLE table_name DROP primary key(column_name);-- 实例ALTER TABLE table_name DROP primary key(UserID);
4、索引(创建、删除)
-- 创建索引-- 在表上创建一个简单的索引。允许使用重复的值-- 语法CREATE INDEX index_name ON table_name(column_name);-- 在表上创建一个唯一的索引。不允许使用重复的值:唯一的索引意味着两个行不能拥有相同的索引值。Creates a unique index on a table. Duplicate values are not allowed-- 语法CREATE UNIQUE INDEX index_name ON table_name(column_name);-- 如果您希望索引不止一个列,您可以在括号中列出这些列的名称,用逗号隔开-- 语法CREATE INDEX index_name ON table_name(column_name1,column_name2,...);-- 删除索引-- 语法DROP INDEX index_name;
5、视图(创建、删除)
-- 创建视图-- 语法CREATE view viewname as select statement-- 删除视图-- 语法DROP view viewname
6、表数据插入(INSERT)、删除(DELETE)、修改(UPDATE)、查询(SELECT)
-- 参数说明:-- column1, column2, ...:字段名称。-- table_name:表名称。-- value1, value2, ...:字段值。-- condition:删除条件,用于指定哪些数据要删除。
-- INSERT INTO 语句用于向表中插入新记录。-- INSERT INTO 语句可以有两种编写形式。-- 第一种形式无需指定要插入数据的列名,只需提供被插入的值即可:-- 语法INSERT INTO table_nameVALUES (value1,value2,value3,...);-- 实例INSERT INTO UserVALUES ('101','张三',20,'广东');-- 第二种形式需要指定列名及被插入的值:-- 语法INSERT INTO table_name (column1,column2,column3,...)VALUES (value1,value2,value3,...);-- 实例INSERT INTO User (user_id, user_name, age)VALUES ('101','张三',20);
-- DELETE 语句用于删除表中的行。-- 语法DELETE FROM table_nameWHERE condition;-- 实例DELETE FROM UserWHERE user_id='101';
-- UPDATE 语句用于更新表中已存在的记录。-- 语法UPDATE table_nameSET column1 = value1, column2 = value2, ...WHERE condition;-- 实例UPDATE UserSET age = 21, address='北京'WHERE user_id='101';
-- SELECT 语句用于从数据库中选取数据。-- 结果被存储在一个结果表中,称为结果集。-- 语法SELECT column1, column2, ... FROM table_name;-- 实例SELECT user_id, user_nameFROM User;-- 或者-- 语法SELECT * FROM table_name;-- 实例SELECT *FROM User;
-- SELECT DISTINCT 语句用于返回唯一不同的值。-- 在表中,一个列可能会包含多个重复值,有时您也许希望仅仅列出不同(distinct)的值。-- DISTINCT 关键词用于返回唯一不同的值。-- 语法SELECT DISTINCT column1, column2, ... FROM table_name;-- 实例SELECT DISTINCT user_id, user_nameFROM User;
-- WHERE 子句用于提取那些满足指定条件的记录。-- 语法SELECT column1, column2, ...FROM table_nameWHERE condition;-- 实例SELECT user_id, user_nameFROM UserWHERE user_name='张三';
-- AND & OR 运算符用于基于一个以上的条件对记录进行过滤。-- 如果第一个条件和第二个条件都成立,则 AND 运算符显示一条记录。-- 如果第一个条件和第二个条件中只要有一个成立,则 OR 运算符显示一条记录。-- AND运算符-- 从用户表中选取地址address为“广东省”并且年龄age>20的所有用户SELECT * FROM UserWHERE address='广东省'AND age > 20;-- OR运算符-- 从用户表中选取地址address为“广东省”或者“北京”的所有用户SELECT * FROM UserWHERE address='广东省'OR address='北京';