MySQL:1044和1045

MySQL:1044和1045_第1张图片
th.jpeg

1044和1045是什么?

使用mysql数据库的时候,最容易碰上1044和1045错误。什么意思?有点经验的人往往会说:没权限,密码错误。于是,菜鸟傻傻记住了。

过一段时间,再问。两个概念,菜鸟傻傻分不清。于是Bing:

*   Error: `1044` SQLSTATE: `42000` ([`ER_DBACCESS_DENIED_ERROR`](https://dev.mysql.com/doc/refman/5.5/en/error-messages-server.html#error_er_dbaccess_denied_error))

    Message: Access denied for user '%s'@'%s' to database '%s'

*   Error: `1045` SQLSTATE: `28000` ([`ER_ACCESS_DENIED_ERROR`](https://dev.mysql.com/doc/refman/5.5/en/error-messages-server.html#error_er_access_denied_error))

    Message: Access denied for user '%s'@'%s' (using password: %s)

转开一个话题:其实用DashApp更快。具体用Dash和Bing搜索主要看查找的内容和个人使用习惯了,下面是dash的一个截图。身边人用Dash的比较少,所以这里多说一句。

MySQL:1044和1045_第2张图片
image.png

如何去理解上面两句英文

Access denied for user '%s'@'%s' to database '%s'
Access denied for user '%s'@'%s' (using password: %s)
  • %s起到一个占位符的作用;注意,这里的%s,我们潜意识默认它是有值的。
  • @'%s'相当于@localhost这种。现在看来很好理解,而我当时的误区是把@后面的%s理解成密码(现在想想都好笑,但是事后诸葛亮,我们要理解这种不以为意的习惯)。所以,当时怎么看怎么别扭。无法区分两个。

而关于其它的错误,也没有必要去记,按照这个方式逻辑去学习应该是可以的。主要是对英文的理解很重要。同时在认识这个问题时,感谢别人的提醒。

笔者后来常遇到的

 Error: `1048` SQLSTATE: `23000` ([`ER_BAD_NULL_ERROR`](error-handling.html#error_er_bad_null_error))
 Message: Column '%s' cannot be null

你可能感兴趣的:(MySQL:1044和1045)