gpt4 book ai didi

sql - 参数化语句真的会更改存储在数据库中的数据以防止 SQL 注入(inject)吗?

转载 作者:搜寻专家 更新时间:2023-10-30 22:01:41 24 4
gpt4 key购买 nike

我的问题基本上是这样的:如果我使用参数化语句/准备语句将用户输入字符串插入表中,然后稍后获取该值并将其用于动态构建表的列值,这是否让我对SQL注入(inject)?

具体例子:

如果我使用参数化语句将用户的输入字符串存储到表中,然后从该表中选择该文本并将其存储在我程序中的局部变量(String localVariable)中并创建一个表,如下所示:

"CREATE TABLE InjectFree (" + localVariable + " TEXT)"

我的 localVariable 是否没有可注入(inject)的 sql 代码?我知道有替代方案(并且可能会使用替代方案只是为了安全起见),但我想我只是想知道参数化一个值实际上做了什么以及它对存储在表中的数据有什么影响。

最佳答案

你会有危险。

参数化插入将防止注入(inject)原始插入语句,但不会防止下一次使用。

关于sql - 参数化语句真的会更改存储在数据库中的数据以防止 SQL 注入(inject)吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11433054/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com