postgresql - 搜索字符串并在表中插入值
问题描述
我有以下记录的表格。以下产品描述由用户在前端(asp.net)的文本框中给出。产品描述将带有单引号或双引号。我想插入表格中。所以我们怎么能检查表中的输入和插入值中是否存在单引号或双引号。请帮助。
字符串 s=教科书
CREATE TABLE Product_Details(Product_Description varchar(50))
Required Output
Product_Description
-------------------
STORE('COVERED)
STEEL("ROOFED)
以上两个字符串的插入语句会有所不同吗?
解决方案
我不确定您到底在寻找什么。您应该能够毫无问题地存储带引号或双引号的文本(注意,我在 Postgresql 9.4 上进行测试,没有 9.2)。问题有时是用单引号创建文本。在这些情况下,通常会有两个这样insert into product_details values ('STORE(''COVERED)')
的单引号。双引号 (") 应该不是问题。您可以使用语法E'STORE(\'COVERED)'
代替两个引号。有时更具可读性。
如果你只是想检查输入中是否有'或"",这个检查很方便:
select length(replace(product_description,'''',''))!=length(product_description),
length(replace(product_description,'"',''))!=length(product_description)
它返回真/假列,告诉第一列中的字符串中是否存在单引号,而后一列中是否存在双引号。
要删除字符串中的引号,您可以执行以下操作:
select replace(replace(product_description,'"',''),'''','')
最好的问候,
Bjarni
推荐阅读
- javascript - discord.js 机器人消息和来自数组的响应
- javascript - 合并对象的对象
- c# - 如何从 Linq 调用 Postgres 的“Round”?
- cryptography - PKCS7 - 我如何知道最后一个字节是否是填充?
- json - 如何在VueJS中的字符串中插入变量
- ios - 如何在 SwiftUI 列表中实现从左到右的滑动?
- django - django中模型类的ModuleNotFoundError
- javascript - 当用户在触摸屏上向下滚动时,如何防止页面重新加载
- azure-language-understanding - 使用 LUIS NLU 实体时,具有列表实体约束的机器学习实体与使用列表实体本身有什么区别?
- html - 我们可以在导航栏中添加多个样式属性吗?