MySQL语句

命令行SQL语句(所有操作都在命令行中)

  • 数据库的操作

  1. 连接数据库:mysql -uroot -proot[我的数据库用户名和密码都是root];
  2. 数据库的创建 : create database 数据库的名 character set 字符集 collate 校对规则 ;[例如: create database db_test character set utf8 collate utf8_bin ]
  3. 数据库的删除: drop database 数据库名;[例如:drop database db_test]
  4. 修改: alter database 数据库名 character set 字符集;[例如:alter database db_test character set gbk] 
  5. 查看服务器现有数据库:show databases;
  6. 查看数据库创建过程: show create database 数据库的名字;
  7. 查询当前所使用的数据库: select database();
  8. 切换数据库 :use 数据库的名字;
  • 表结构的操作

  1. 创建: create table 表名(列名 列的类型 列的约束,列名 列的类型 列的约)
    1. 列的类型: char / varchar
    2. 列的约束:
      1. primary key 主键约束
      2. unique : 唯一约束
      3. not null 非空约束
    3. 自动增长 : auto_increment
  2. 删除 : drop table 表名
  3. 修改:
    1. 修改表中的列:alter table 表名[(add, modify, change , drop)修改列]
    2. 修改表名: rename table 旧表名 to 新表名
    3. 修改表的字符集:alter table 表名 character set 字符集
  4. 查询表结构:
    1. show tables; 查询出所有的表
    2. show create table 表名: 查询表的创建语句, 表的定义
    3. desc 表名: 查询表的结构
  • 表中数据的操作

 

  1. 插入:  insert into 表名(列名,列名) values(值1,值2);
  2. 删除: delete from 表名 [where 条件]
  3. 修改: update 表名 set 列名='值' ,列名='值' [where 条件];
  4. 查询: select [distinct] * [列名1,列名2] from 表名 [where 条件]
  • 特殊语句:

  1. as关键字: 别名
  2. where条件后面:
    1. 关系运算符: > >= < <= != <>
    2. --判断某一列是否为空: is null is not null
    3. in 在某范围内
    4. between...and
    5. 逻辑运算符: and or not
    6. 模糊查询: like
    7. _ : 代表单个字符
    8. %: 代表的是多个字符
  3. 分组: group by
  4. 分组之后条件过滤: having
  5. 聚合函数: sum() ,avg() , count() ,max(), min()
  6. 排序: order by (asc 升序, desc 降序)

注意事项:

  1. 命令行执行SQL语句时,连接数据库操作中,mysql -uroot -proot后面不能加分号;

  2.  

你可能感兴趣的:(MySQL)