Mysql数据库相关报错总结+数据类型+常用语法(增删查改)

报错:

(1045)报错一:密码错误,重新输入密码.

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

如果忘记mysql密码,解决办法:

        1. 首先设置跳过密码登陆数据库(文本编辑器打开)

sudo gedit /etc/mysql/mysql.conf.d/mysqld.cnf

        2. 在其中找一行加入以下代码以跳过密码,加入后保存

skip-grant-tables

        3. 重启mysql服务

service mysql restart

        4. 登录mysql,回车后发现还让输入密码,再回车即可

mysql -u root -p

        5. 登录成功后,在有"mysql>"的终端中依次输入

use mysql;
flush privileges; 
UPDATE user SET authentication_string='' WHERE user='root';
flush privileges;
ALTER user 'root'@'localhost' IDENTIFIED BY '你的密码';

在该过程中没有出现error即为成功,若在最后设置密码出错,请看报错四。

        6. 输入 exit; 退出mysql;

        7.回过头来执行第一步,打开mysqld.cnf,删除之前加上的skip-grant-tables,并点击保存

        8.重启mysql,并登录,输入刚才设置的密码,即可成功!

service mysql restart
mysql -u root -p

(1449)报错二:误删用户

mysql> show databases;
ERROR 1449 (HY000): The user specified as a definer ('mysql.infoschema'@'localhost') does not exist

解决:

create user 'mysql.infoschema'@'%' identified by '你的密码';
grant all privileges on *.* to 'mysql.infoschema'@'%';

(1064)报错三:输入的sql语句语法不对

ERROR 1064 (42000):You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.infoschema’@‘127.0.0.1’' at line 1

解决:查看输入的语句有无字母拼写错误,有无空格多加,SQL关键字冲突,是否和同库下其他表冲突,有没有加分号等。 如果还是不行,更换表的名称,或字段的名称。

(1819)报错四:密码格式不符合策略

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

解决:

登录到mysql后,输入以下代码查看密码策略

SHOW VARIABLES LIKE 'validate_password%';

如图策略为:

validate_password.length 为8:密码有效长度为8位

validate_password.mixed_case_count 为1:密码至少要包含的小写字母个数和大写字母个数为1

validate_password.number_count 为1:密码至少要包含的数字个数为1

validate_password.special_char_count 为1:密码至少要包含的特殊字符个数为1

(1044)报错五:root'@'%无权限

(1044, "Access denied for user 'root'@'%' to database 'information_schema'")

解决:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;

如果还不行的话就切换数据库。

mysql数据类型:

  1. 数值型
    1. 整数型(如 INT, SMALLINT):用于存储整数值,根据不同的需求,有不同的大小限制和存储范围。
    2. 浮点数型(如 FLOAT, DOUBLE):用于存储带有小数部分的数值,支持较大的数值范围和小数精度。
    3. 小数型(如 DECIMAL):用于存储固定精度和小数位数的数值,适用于财务计算等需要精确小数的场景。
  2. 字符串型
    1. 字符型(如 CHAR):用于存储固定长度的字符串。
    2. 变量长度型(如 VARCHAR, TEXT):用于存储可变长度的字符串,根据实际内容占用空间。
  3. 逻辑型
    1. 布尔型(如 BOOLEAN):用于存储真或假的逻辑值。
  4. 日期时间型
    1. 日期型(如 DATE):用于存储日期信息,通常包括年月日。
    2. 时间型(如 TIME):用于存储时间信息,通常包括小时、分钟和秒。
    3. 日期时间型(如 DATETIME, TIMESTAMP):结合了日期和时间信息,可以同时存储年月日时分秒。

常用语法:

  1. 查看有哪些数据库
    show databases;
  2. 查看表的结构
    desc 表名;
  3. 使用数据库,增删查改前使用
    use 数据库名;
  4. 创建表
    CREATE TABLE 表名(sec INT,line FLOAT, ang FLOAT)

    其中 sec 为表中的字段名,INT为整型数据,后面以此类推。

  5. 查询表
    1. 查询表中所有内容
      SELECT * FROM 表名;
    2. 按照某个名称查询

      SELECT * FROM 表名 WHERE name=名称;

      其中name必须为你当前表中的字段名。

    3. 查询表中有多少行数据

      select count(*) from speed_trend;
      
  6. 插入表,样例
    INSERT INTO 表名 (sec,line,ang) VALUE (3,0.453,0.421);
  7. 删除表
    1. 删除整个表即清空表内容
      DELETE FROM 表名;
    2. 按照某个名称删除
      delete from 表名 where name=“小爱”;
  8. 更新表
    update 表名 set line=0.229899 where sec=54;

    即将表中sec(秒)等于54的line(线速度)改为0.229899

  • 17
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值