mysql数据库和数据表

常用的数据类型:

  • int : 整型  用于定义整数类型的数据
  • float : 单精度浮点4字节32位  准确表示到小数点后六位.
  • double :双精度浮点8字节64位
  • char :固定长度的字符类型  用于定义字符类型数据
  • varchar :可变长度的字符类型
  • text : 文本
  • image: :图片

SQL语言:

  • Structured Query Language的缩写,即结构化查询语言 关系型数据库的标准语言 用于维护管理数据库 包括数据查询、数据更新、访问控制、对象管理等功能

SQL语言分类:

  • DDL:数据定义语言:用于创建数据库对象,如库、表、索引等
  • DML:数据操纵语言:用于对表中的数据进行管理,用来插入、删除和修改数据库中的数据
  • DQL:数据查询语言:用于从数据表中查找符合条件的数据记录
  • DCL:数据控制语言 ( alter ):用于设置或者更改数据库用户或角色权限

DDL数据定义语言包括:

  • create 创建

    create database 库名;   #创建数据库
    
    create database 表名;   #创建数据表
  • drop  删除
    drop database 库名;  #删除数据库
    
    drop table  表名;   #删除数据表

DML数据操纵语言包括:

  • insert 插入数据
    方法一:insert into 表名 (字段1、字段2......) values (字段1、字段2....)
    
    方法二:insert into 表名 values(字段1的值、字段2的值.......)
  • update 修改
    update 表名 set  属性=字段的新值  where 条件表达 

DQL数据查询语言:

  • select查询,方式有两种
    select 字段1,字段2...  from  表名    可加条件where(条件表达式);
    select  *  from  表名;
    查询显示数据的行数
    select  *  from  表名  limit  3;     显示前三行
    select  *  from  表名  limit  3,2;    显示前三行的后两行

DCL:数据控制语言 (alter)

  • 修改表名 :
    alter table 旧的表名 rename  新表名; 
  • 修改表的结构:

    1、增加表的字段:
    alter table 表名 add 字段 数据类型;
    
    2、修改表的字段:
    alter table 表名 change 旧字段 新字段;
    ​

数据库表高级操作

  • 关于数据库表的一些基础操作,比如:创建表、删除表、表的 查询等等。数据表在数据库的使用过程中右着很言的使用频率,所以本节会进解些关于 表的升级用法,包括清空表、使用临时表和克隆表。

1、清空表

  • 清空一个数据表就是删除这个表内的所有数据。前面的小节已经学习过 DELETE FROM 语,可以删除表内的数据,除此之外还可以使用TRUNCATE TABLE 语句实现消空表内记录。DELETE FROM 语可以使用 WHERE 子句对删除的结里生进行过滤洗择,这样更方便、更灵活。TRUNCATE TABLE 语句是删除表中所有记录数据,没法定制,灵活性上稍差。消空表的具体操作
2、临时表
  • Mysql的临时表,顾名思义,就是临时建立的表,并不会长期存在,主要用于保存一 些临时教据。临时表有个特性就是只在当前连接可见,当前连接下可执行增刚改查等操作,当连接被关闭后,临时表就会被 MySQL 删除,相关的资源也会被释放。下面创建临时表 mytmp,然后插入数据,之后断开当前连接,最后审新连到 MySQL 查有临时是否还存在
3、克隆表
方法一
create  table  新表   like  旧表
   #复制格式: 通过like复制旧表名的表结构,生成一个新的表名的结构
insert  into  新表名   select  *  from  旧表名
   #备份内容

方法二
create  table  新表名(select * from 旧表名)
   #复制旧表数据到新表中

 

数据库用户授权:

格式 :
grant 权限列表 on 数据库.表名 to '用户名'@'来源地址' identified by '密码';

例:
grant all privileges on *.* to 'lisi'@'%' identified by '123456';
#允许用户lisi在所有终端远程连接mysql,并拥有所有权限
flush privileges;     #刷新权限

*.* :这里表示所有的数据库(可以指定)
lisi :表示用户
% :表示所有终端  (localhost :表示仅本地)
'123456' :表示密码

验证:
mysql -ulisi -p123456
show databases;
撤销权限:
revoke  权限列表 on 数据库.表名 from '用户名'@'来源地址'
show grant for '用户名'@'来源地址'

 

数据库用户管理

1、新建用户
create user '用户名'@'来源地址' 设置用户密码 identified by '密码'

密码可以使用加密方式:select password '密码'
2、查询创建的用户信息进行增删改查

mysql创建的用户都是在mysql数据库下面的user表中

  • 查询 可以使用 select user

  • 删除用户 drop

  • 修改用户密码

    1.   set   password   =   password('密码')      修改的是当前的
    2. ​    set   password   for  '用户名' @ 'localhost'  = password('密码')  修改其他用户 
    3. 忘记用户的密码:
       ​      修改 my.cnf 配置  跳过密码认证
       ​       [mysql]
    ​          skip-grant-tables   

你可能感兴趣的:(数据库,mysql)