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