mysql工作台md5列-如何?

发布于 2024-11-05 01:41:44 字数 84 浏览 3 评论 0原文

有谁知道我们如何/在哪里可以应用 md5 加密列。

我正在创建一个用户密码表,并在密码列上应用 md5 加密。

提前致谢。

Does anyone know how/where can we apply to a column, a md5 encryption.

I'm creating a user password table and on the password column I would like to apply md5 encryption.

Thanks in advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

四叶草在未来唯美盛开 2024-11-12 01:41:44

摘自mysql工作台手册:

可以在字段中输入函数或其他表达式。
使用前缀 \func 防止 MySQL Workbench 转义
引号。例如,对于表达式 md5('fred'),MySQL
Workbench 通常会生成代码 md5(\'fred\')。为防止
为此,输入表达式 \func md5('fred') 以确保
引用不会被转义。

Taken from mysql workbench manual:

It is possible to enter a function, or other expression, into a field.
Use the prefix \func to prevent MySQL Workbench from escaping
quotation marks. For example, for the expression md5('fred'), MySQL
Workbench normally would generate the code md5(\'fred\'). To prevent
this, enter the expression as \func md5('fred') to ensure that the
quoting is not escaped.

寒江雪… 2024-11-12 01:41:44

有一个“md5()”函数,当给定一个字符串时,该函数将返回一个 32 个十六进制数字的字符串。只需创建一列 char(32) 来保存它就可以了。

请参阅文档

就在 MySql 工作台中使用它而言,我认为不可能显式标记一个列来包含 md5 哈希值,因为实际上您可以简单地将 md5 哈希值放在 char 列中,如上所述。我不相信您可以让列以这种方式对插入的字符串隐式执行 md5 函数调用。 (我可能是错的)。

There's an 'md5()' function that when given a string will return a string of 32 hex digits. Just create a column of char(32) to hold it should do the trick.

See documentation.

In terms of using this within MySql workbench, I don't think it's possible to mark a column to contain an md5 hash explicitly as really you can simply put an md5 hash in a char column as mentioned above. I don't believe that you can have a column implicitly perform the md5 function call on an inserted string in this fashion. (I could be wrong).

じ违心 2024-11-12 01:41:44

已经一年多了……但是如果其他人像我一样跌倒在这里:-)

事情是这样的:

注意可以将函数或其他表达式输入到
场地。使用前缀 \func 防止 MySQL Workbench 转义
引号。例如,对于表达式 md5('fred'),MySQL
Workbench 通常会生成代码 md5(\'fred\')。为防止
为此,输入表达式 \func md5('fred') 以确保
引用不会被转义。

整个文档此处

More than a years now... but if someone else fall here like I did :-)

And it goes like this:

Note It is possible to enter a function, or other expression, into a
field. Use the prefix \func to prevent MySQL Workbench from escaping
quotation marks. For example, for the expression md5('fred'), MySQL
Workbench normally would generate the code md5(\'fred\'). To prevent
this, enter the expression as \func md5('fred') to ensure that the
quoting is not escaped.

Whole doc here.

浮华 2024-11-12 01:41:44

/func 东西对我不起作用。它总是忽略它并将其视为字符串。
不过,我能够通过一些 SQL 注入来欺骗工作台。

编写 ( SELECT ... ) 语句就可以了。所以我把它放在我的字段中:

( SELECT GeomFromText( 'POLYGON (( 0 -90, 0 90, 360 90, 360 -90, 0 -90)) ' ) )

它用多边形对象而不是字符串填充数据库字段。

The /func thing didn't work for me. It was always ignoring it and treated it as a String.
However I was able to trick the Workbench with some SQL-Injection.

Writing a ( SELECT ... )-statment just worked. So I put this in my field:

( SELECT GeomFromText( 'POLYGON (( 0 -90, 0 90, 360 90, 360 -90, 0 -90)) ' ) )

and it filled the databese field with the polygon-object and not the string.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文