数据库CRUD操作即添加(Create)、读取(Read)、更新(Update)和删除(Delete)。
1. 添加操作也称插入操作,使用Insert语句,Insert语句可以用于几种情况:
- 插入完整的行;
- 插入行的一部分;
- 插入多行;
- 插入某些查询的结果
插入完整的行:
Insert into 表名 values (列值1, 列值2, 列值3, ...);
这种方法需要为每个列提供一个值,且各个列必须以它们在表定义中出现的次序填充。对于自动增量列或者不提供列值的列要使用NULL进行占位。
更安全的做法是明确给出列名:
Insert into 表名 (列名1, 列名2, 列名3, ...) values (列值1, 列值2, 列值3, ...);
这种方式可以对行的部分列进行填充,并且不依赖表中各个列的次序。
插入多个行:
Insert into 表名 (列名1, 列名2, 列名3, ...) values (列值1, 列值2, 列值3, ...), (列值1, 列值2, 列值3, ...), ...;
插入检索出的数据,即Insert Select:
Insert into 表名1 (列名1, 列名2, 列名3, ...) Select 列名1, 列名2, 列名3, ... FROM 表名2;
2.查询操作,使用Select语句
3.更新操作,使用Update语句
Update 表名 Set 列名1={新值1}, 列名2={新值2}, ... [where 列名X={给定值}];
4.删除操作,使用Delete语句
Delete From 表名 [Where 列名X={给定值}]
使用Delete语句需要特别注意,如果省略了Where子句,将删除表中所有行,如果想删除所有行,可以使用速度更快的TRUNCATE TABLE语句。另外Delete删除的是整行而不是删除列,可以使用UPDATE语句。
数据库管理常用命令
远程连接权限查看:
show grants for root@'%';
赋予用户远程登录某个数据库的权限:
GRANT ALL PRIVILEGES ON `dev`.* TO 'root'@'%';
flush privileges;