在asp.net中替换撇号以防止SQL错误
发布时间:2020-12-16 06:30:00 所属栏目:asp.Net 来源:网络整理
导读:我有一个带有Name字段的web表单,我希望能够接受单个撇号,例如名称为O’Leary,但是当我尝试将此记录推送到SQL 2005服务器时,我收到错误.我的问题不是这个.当我尝试使用此语句将记录插入数据库时??… Dim acctName As String = Replace(txtName.Text,"'","''")
我有一个带有Name字段的web表单,我希望能够接受单个撇号,例如名称为O’Leary,但是当我尝试将此记录推送到SQL 2005服务器时,我收到错误.我的问题不是这个.当我尝试使用此语句将记录插入数据库时??…
Dim acctName As String = Replace(txtName.Text,"'","''") 我在数据库中获得O”Leary而不是O’Leary.思想SQL应该把这些双单撇号视为一个撇号??? 解决方法
你最好使用参数化查询.这些将自动处理单引号,并更好地保护您免受SQL注入.
插入双单引号(我说对了吗?)是一种逃避数据的方法.它应该工作,但它不是最佳实践. 请参阅此文章以获得更全面的答案: http://msdn.microsoft.com/en-us/library/ff648339.aspx 我建议的是第3步. 编辑 – 我应该更好地阅读这个问题 如果您已经在使用参数化查询或存储过程,并且您将acctName的值设置为参数的值,那么您不需要自己转义引号.这是自动处理的. 它还由几个工具处理,包括Mirosoft模式和实践数据库库.这有几个命令,你可以传入一个语句和用作参数值的对象数组 – 也可以处理转义. 如果是这种情况之一,您可以完全消除替换值的代码行. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
推荐文章
站长推荐
- ASP.NET 5 API – Azure AD B2C
- asp.net – HttpMethod和HttpRequest的RequestTy
- asp.net-mvc – MVC中的SSRS Reportviewer,通过自
- asp.net – 如何关闭IIS中的预编译?
- 如果复选框被选中,ASP.NET – 需要一个文本框
- asp-classic – 在VBScript中输出GUID会忽略它之
- asp.net – 使用MySql和MVC 3上的成员资格向注册
- ASP.NET – 从静态方法/静态类访问会话?
- asp.net-core – 如何根据ASP.NET Core中的解决方
- asp.net – web.config文件设置是否覆盖IIS设置?
热点阅读