数据库(6)DML 数据操作 DCL数据控制

SQL插入数据

查询表中的所有数据
 SELETE * FROM 表名;

DML是对表中的数据进行增、删、改操作

插入操作:
 INSERT INTO 表名 ( 列名1,列名2 ) VALUES (列值1, 列值2...);
添加多条数据(批量插入):
 VALUES后面以逗号隔开
 INSERT INTO 表名(列名1,列名2....) VALUES(列值1,列值2),(列值1,列值2)....;
注意事项
  • 列名与列值的类型,个数,顺序要一一对应.
  • 值不要超出列定义的长度.
  • 插入的日期和字符一样,都使用引号括起来.


SQL更新数据以及修改数据库密码

更新操作
 UPDATE 表名 SET 列名1=列值1, 列名2=列值2... WHERE 列名=值
举例
 把所有学生的分数改为90                        UPDATE students SET score=90;
 把姓名为zs的学生分数修改为60                  UPDATE students SET score=60 WHERE name='zs';
 把姓名为lisi的年龄修改为20和分数修改为70      UPDATE students SET age=30,score=70 WHERE name='lisi';
 把wangwu的年龄在原来基础上+1岁                UPDATE students SET age=age+1 WHERE name='wangwu'
修改数据库密码
 mysqladmin -u root -p password 新密码
删除操作
 # 如果不加过滤条件就是删除所有数据
 DELETE FROM 表名 [WHERE 列名=值]
删除所有数据
   TRUNCATE TABLE 表名;
ELETE 与 TRUNCATE的区别:DELETE可以删除指定数据也能删除所有数据 TRUNCATE只能删除所有数据
 * DELETE删除表中的数据,表结构还在;删除后数据还可以找回
 * TRUNCATE删除是把表直接DROP掉,然后再创建一个同样的新表.删除的数据不能找回.
 * 执行速度比DELETE快

DCL

创建用户

  • 需要使用root用户登录之后进行操作

创建用户的命令为:create user 用户名@xxx identified by 密码;

  • 其中xxx表示创建的用户使用的IP地址,可以设置为localhost(代表本机)或者'%'(代表允许所有IP地址登录)

给用户授权

  • 创建用户之后,可以使用新用户进行登录,查看数据库只有系统自带的数据库,想要操作自己创建的数据库还需要root用户对新用户进行授权

给用户授权的命令为:grant 权限1,权限2,........,权限n on 数据库名.* to 用户名@IP;

  • 上面命令的含义是将数据库的n个权限授予用户
  • 如果是将操作数据库的所有的权限授予用户,命令为:grant all on 数据库名.* to 用户名@IP;

撤销授权

当需要限制新用户操作数据库的权限时,root用户可以撤销已授予用户的某些权限

撤销权限的命令为:revoke 权限1,权限2,........,权限n on 数据库名.* from 用户名@IP;

查看用户的权限

root用户查看用户权限的命令为:show grants for 用户名@IP;

删除用户

root用户删除用户的命令为:drop user 用户名@IP;

你可能感兴趣的:(数据库(6)DML 数据操作 DCL数据控制)