我浏览问题时注意到了这一点:
SELECT prodid, issue
FROM Sales
WHERE custid = @custid
AND datesold = SELECT MAX(datesold)
FROM Sales s
WHERE s.prodid = Sales.prodid
AND s.issue = Sales.issue
AND s.custid = @custid
我想知道 custID 前面的“@”有什么作用?这只是从所选表中引用 custID 的一种方法吗?
最佳答案
@CustID 意味着它是一个参数,您稍后将在代码中为其提供值。这是防止 SQL 注入(inject)的最佳方法。使用参数创建查询,而不是连接字符串和变量。数据库引擎将参数值放入占位符所在的位置,SQL注入(inject)的可能性为零。
关于sql - "@"符号在 SQL 中起什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/361747/