sql - 这段代码是什么意思..[select @a:=password(?)]
问题描述
我以前没见过。这句话背后的含义是什么?
select @a:=password(?)
解决方案
没有任何上下文,很容易通过分解来做出一个很好的猜测:
select
你应该很熟悉@a
可能是一个变量名;许多数据库使用 @ 作为前缀,就像 PHP 和 Perl 等语言使用 $:=
是赋值运算符的一种常用拼写方式,用于区分=
SQL中的比较password()
看起来像一个函数调用;可能它运行一些散列算法,以便密码不以纯文本形式存储?
通常用作占位符,用户的输入应放在参数化查询中(如果您不知道这些,请查找它们,它们是确保 SQL 安全的最佳方式)
因此,该语句可能意味着“对用户提供的数据运行密码函数,并将其分配给变量 @a 以供以后的语句中使用”。
推荐阅读
- unix - solaris 11.4 中的重启服务
- android - 我无法让 Here Maps 在 Android Studio 中工作
- laravel - laravel 传递数组查看对象
- java - Eclipse 中的“当前正在使用的工作区”
- javascript - JS:高阶函数和map、reduce和filter
- android - 我运行我的项目,但它给出了错误这是什么我不知道
- python-3.x - 如何使用 Python 3 解析 URL 片段中的参数
- typescript - 带有打字稿的 Passportjs
- c - 字符串标记似乎没有在我的 C 程序中存储或访问
- c# - 屏幕截图返回为黑色图像 xamarin.ios