MySQL

作者: Zz鱼丸 | 来源:发表于2019-07-20 09:11 被阅读0次

    管理MySQL的命令:

    • 查看所有数据库
      SHOW DATABASES:
    • 显示指定数据库的所有表,使用该命令前需要使用 use 命令来选择要操作的数据库:
      SHOW TABLES;
    • 显示数据表的属性,属性类型,主键信息 ,是否为 NULL,默认值等其他信息
      SHOW COLUMNS FROM 数据表;
    • 创建数据库
      CREATE DATABASE 数据库名;
    • 删除数据库
      drop database 数据库名;
    • 选择数据库
      use 数据库名;
    • 创建数据表
      CREATE TABLE table_name (column_name column_type);
    CREATE TABLE IF NOT EXISTS `runoob_tbl`(
       `runoob_id` INT UNSIGNED AUTO_INCREMENT,
       `runoob_title` VARCHAR(100) NOT NULL,
       `runoob_author` VARCHAR(40) NOT NULL,
       `submission_date` DATE,
       PRIMARY KEY ( `runoob_id` )
    )ENGINE=InnoDB DEFAULT CHARSET=utf8;
    实例解析:
    
        如果你不想字段为 NULL 可以设置字段的属性为 NOT NULL, 在操作数据库时如果输入该字段的数据为NULL ,就会报错。
        AUTO_INCREMENT定义列为自增的属性,一般用于主键,数值会自动加1。
        PRIMARY KEY关键字用于定义列为主键。 您可以使用多列来定义主键,列间以逗号分隔。
        ENGINE 设置存储引擎,CHARSET 设置编码
    
    • 删除数据表
      DROP TABLE table_name ;
    • 插入数据
    INSERT INTO table_name ( field1, field2,...fieldN )
                           VALUES
                           ( value1, value2,...valueN );
    
    • 查询数据
    SELECT column_name,column_name
    FROM table_name
    [WHERE Clause]
    [LIMIT N][ OFFSET M]
    
    select * from runoob_tbl;
    select runoob_title from runoob_tbl;
    select runoob_id,runoob_title from runoob_tbl;
    
    • WHERE 子句
    SELECT field1, field2,...fieldN FROM table_name1, table_name2...
    [WHERE condition1 [AND [OR]] condition2.....
    
    SELECT * from runoob_tbl WHERE runoob_author='菜鸟教程';
    
    
    图片.png
    • UPDATE 更新 ,修改或更新 MySQL 中的数据
    UPDATE table_name SET field1=new-value1, field2=new-value2
    [WHERE Clause]
    实例
    UPDATE runoob_tbl SET runoob_title='学习 C++' WHERE runoob_id=3;
    
    • DELETE 语句,删除 MySQL 数据表中的记录。
    DELETE FROM table_name [WHERE Clause]
    实例
    DELETE FROM runoob_tbl WHERE runoob_id=3;
    Query OK, 1 row affected (0.23 sec)
    
    • LIKE 子句
      我们知道在 MySQL 中使用 SQL SELECT 命令来读取数据, 同时我们可以在 SELECT 语句中使用 WHERE 子句来获取指定的记录。
      WHERE 子句中可以使用等号 = 来设定获取数据的条件,如 "runoob_author = 'RUNOOB.COM'"。但是有时候我们需要获取 runoob_author 字段含有 "COM" 字符的所有记录,这时我们就需要在 WHERE 子句中使用 SQL LIKE 子句。
    SELECT field1, field2,...fieldN 
    FROM table_name
    WHERE field1 LIKE condition1 [AND [OR]] filed2 = 'somevalue'
    实例
    SELECT * from runoob_tbl  WHERE runoob_author LIKE '%COM';
    
    • 复制表
    INSERT INTO clone_tbl (runoob_id,
                           runoob_title,
                           runoob_author,
                           submission_date)
    SELECT runoob_id,runoob_title,
                   runoob_author,submission_date
    FROM runoob_tbl;
    ``
    #数据类型
    ##数值类型
    ![图片.png](https://img.haomeiwen.com/i7426696/e6eadc2255730327.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
    ##日期和时间类型
    ![图片.png](https://img.haomeiwen.com/i7426696/7aea32c374e546bb.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
    ##字符串类型
    ![图片.png](https://img.haomeiwen.com/i7426696/a5c34a456b796842.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
    MySQL 5.0 以上的版本:
    1、一个汉字占多少长度与编码有关:
    UTF-8:一个汉字=3个字节
    GBK:一个汉字=2个字节
    2、varchar(n) 表示 n 个字符,无论汉字和英文,Mysql 都能存入 n 个字符,仅是实际字节长度有所区别
    3、MySQL 检查长度,可用 SQL 语言来查看
    
    #解决访问同网段IP的数据库错误
    

    https://blog.csdn.net/OldTogether/article/details/79612627

    问题:
    同一个项目,在windows下访问本地的mysql正常运行,在同一网段的计算机上面报下面异常,java.sql.SQLException:null, message from server: "Host '192.168.0.131' is not allowed to connect.
    解决方法:
    use mysql;
    show tables;
    select host from user;
    update user set host ='%' where user ='root';
    重启mysql服务
    

    相关文章

      网友评论

          本文标题:MySQL

          本文链接:https://www.haomeiwen.com/subject/uouskctx.html