• SQL基础知识一


    一、建库

    show databases ;//显示已存在的数据库
    create database 数据库库名;
    use 数据库名;//进入新建的数据

    二、建表 

    show tables;//查询已存在的数据表 
    create table  数据表名 
    (
    id   int ,
    name varchar(2000) not null,//字段及类型
    phone  varchar(2000) not null,
    
    );//建立新的数据表
    
    

     三、查看表

    1.
    desc 表名;//查看表结构
    mysql> desc  name;
    +----------+-----------+------+-----+---------+-------+
    | Field    | Type      | Null | Key | Default | Extra |
    +----------+-----------+------+-----+---------+-------+
    | id       | int(11)   | YES  |     | NULL    |       |
    | name     | char(255) | YES  |     | NULL    |       |
    | 地址     | char(255) | YES  |     | NULL    |       |
    | PhoneNum | double    | YES  |     | NULL    |       |
    +----------+-----------+------+-----+---------+-------+
    2.
    show create table 表名;//查看表定义
    mysql>  show create table name;
    +-------+-------------------------------------+
    | Table | Create Table                                                                                                     |
    +-------+-------------------------------------+
    | name  | CREATE TABLE `name` (
      `id` int(11) DEFAULT NULL,
      `name` char(255) DEFAULT NULL,
      `地址` char(255) DEFAULT NULL,
      `PhoneNum` double DEFAULT NULL
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 |
    +-------+-------------------------------------+

         Field:字段表示的是列名

      Type:字段表示的是列的数据类型

        Null :字段表示这个列是否能取空值

        Key :普通索引 。在mysql中key 和index一样,这个Key列可以有如下的值:PRI(主键)、MUL(普通的b-tree索引)、UNI(唯一索引)

        Default: 列的默认值

        Extra :其它信息

    3.查看表内容

    select  * from 表名;
    例:
    mysql> select *from name;
    +----+------+------------+-------------+
    | id | name | 地址       | PhoneNum    |
    +----+------+------------+-------------+
    |  1 | 张三 | 山东省济南 | 12345678945 |
    |  2 | 李四 | 山东省济南 | 13211111119 |
    +----+------+------------+-------------+

    四、增

    1.插入信息;

     insert into 表名(列名 多个用,隔开) values(插入的对应值用单引号然后用,隔开);
    mysql> insert into name(id,name,地址,PhoneNum)
     values('4','王五','山东省青岛','9874561230');
    Query OK, 1 row affected//这是返回的信息代表操作成功
    
    mysql> select *from name; //查看表内容
    +----+------+------------+-------------+
    | id | name | 地址       | PhoneNum    |
    +----+------+------------+-------------+
    |  1 | 张三 | 山东省济南 | 12345678945 |
    |  2 | 李四 | 山东省济南 | 13211111119 |
    |  4 | 王五 | 山东省青岛 |  9874561230 |
    +----+------+------------+-------------+

    1.1增加字段

     alter table 表名 add 字段名(列名) 类型  字段类型 [是否允许非空]

    例:(1)增加成绩字段类型为 varchar 大小为500个字符 字段类型不允许为空

    mysql> alter table name add 成绩 varchar(500) not NULL ;
    
    mysql> select *from name;
    +----+------+------------+-------------+------+
    | id | name | 地址       | PhoneNum    | 成绩 |
    +----+------+------------+-------------+------+
    |  1 | 张三 | 山东省济南 | 12345678945 |      |
    |  2 | 李四 | 山东省济南 | 13211111119 |      |
    |  4 | 王五 | 山东省青岛 |  9874561230 |      |
    +----+------+------------+-------------+------+

     (2)增加成绩字段类型为 varchar 大小为500个字符   字段类型是否为空(不写默认为空)

    mysql> alter table name add 成绩 varchar(500) ;
    
    mysql> select *from name;
    +----+------+------------+-------------+------+
    | id | name | 地址       | PhoneNum    | 成绩 |
    +----+------+------------+-------------+------+
    |  1 | 张三 | 山东省济南 | 12345678945 | NULL |
    |  2 | 李四 | 山东省济南 | 13211111119 | NULL |
    |  4 | 王五 | 山东省青岛 |  9874561230 | NULL |
    +----+------+------------+-------------+------+

    五、删

    1,删除某字段(列)

    alter table 表名 drop 字段名;

     例:删除 成绩字段

    mysql> alter table name drop 成绩;
    
    
    mysql> select *from name;
    +----+------+------------+-------------+
    | id | name | 地址       | PhoneNum    |
    +----+------+------------+-------------+
    |  1 | 张三 | 山东省济南 | 12345678945 |
    |  2 | 李四 | 山东省济南 | 13211111119 |
    |  4 | 王五 | 山东省青岛 |  9874561230 |
    +----+------+------------+-------------+

    2.删除某一行

    delete  from  表名 where  字段号=''

    例 删除id=4的那一行数据

    mysql> delete from name where id='4';
    
    mysql> select *from name;
    +----+------+------------+-------------+
    | id | name | 地址       | PhoneNum    |
    +----+------+------------+-------------+
    |  1 | 张三 | 山东省济南 | 12345678945 |
    |  2 | 李四 | 山东省济南 | 13211111119 |
    +----+------+------------+-------------+

    六,改

    1.改密码

     update mysql.user set authentication_string=password('新密码') where user='root'; 

        注意:输入密码不要使用独立键盘,有可能数字键盘没有开,但输入默认是有效的

        接着刷新权限:

    FLUSH PRIVILEGES;
    接着退出:quit;
    

    如果出现修改密码不成功28000错误  ,用下面语句修改(最好手动输入避免字符问题)

    UPDATE mysql.user SET password=PASSWORD(’新密码’) WHERE User=’root’;
    

     接着刷新权限:

    FLUSH PRIVILEGES;
    接着退出:quit;

     2.

    (1).用root 进入mysql后
    mysql>set password =password('你的密码');
    mysql>flush privileges;
    (2).使用GRANT语句
    mysql>grant all on *.* to 'root'@'localhost' IDENTIFIED BY '你的密码'with grant option ;
    mysql>flush privileges;

    (3).进入mysql库修改user表
    mysql>use mysql;
    mysql>update user set password=password('你的密码') where user='root';
    mysql>flush privileges;
  • 相关阅读:
    centos7部署jmeter+grafana+telegraf+prometheus/influxdb,构建性能测试可视化实时监控(三)
    python+uvicorn+fastapi (二)
    python+uvicorn+fastapi (一)
    vue系列 <router-link>属性
    vue系列 vue-router安装配置呈现DEMO
    vue系列 url的hash和HTML5的history
    vue系列 前后端渲染+前后端路由
    python框架Django实战商城项目之工程搭建
    Socket--selecct的用法
    迭代器与生成器的区别
  • 原文地址:https://www.cnblogs.com/lshdashi/p/7989361.html
Copyright © 2020-2023  润新知