sql - 在动态sal中插入记录时如何处理撇号
问题描述
这是示例存储过程。Real SP 包含 35 个参数。其中只有一个参数 Message 可以包含撇号。如果我尝试将此类记录插入表中,则会出现错误。如何处理。
Create Procedure ProcInsertRecord
@Name varchar(30),
@mobile_no varchar(30),
@message varchar(30),
@Address varchar(30),
@Designation varchar(30)
as
begin
set @SQL = 'INSERT INTO ['+@table+'](Name,Mobile,Message,Address,Designation) values ('''+@Name +''' , '+@mobile_no+' , '''+@message+''','''+@Address+''','''@Designation+''')
sp_helptext @SQL
end
解决方案
你失去了一些角色。
尝试:
DECLARE
@Name VARCHAR(30) = 'Name',
@mobile_no VARCHAR(30) = 'Mobile',
@message VARCHAR(30) = 'Message',
@Address VARCHAR(30) = 'Adress',
@Designation VARCHAR(30) = 'Designation',
@SQL VARCHAR(1000) = 'SQL',
@table VARCHAR(100) = 'table'
SET @SQL = 'INSERT INTO [' + @table + '](Name,Mobile,Message,Address,Designation) values (''' + @Name + ''' , ' + @mobile_no + ' , ''' + @message + ''',''' + @Address + ''',''' + @Designation + ''')'
PRINT @SQL
推荐阅读
- android - PLACES_API_ACCESS_NOT_CONFIGURED 具有不受限制的密钥
- apache-nifi - Flow中的NiFi用户相关信息
- spring-boot - 如何在 JPA orm.xml 文件中编写自定义 where 子句
- python - 使用txt文件的高效python for循环
- ios - 无法签署存档以提交给 TestFlight
- python - 一个 conda 环境自动在 jupyter notebook 中获取其他环境的依赖项
- angular - 在量角器中做积极断言的更好方法
- reactjs - 使用 Axios 在 ReactJs 中的错误处理在 android chrome 与 macOS chrome 上表现不同
- r - 非常令人困惑的 R 功能 - 完成列表项名称
- xamarin.forms - Xamarin 窗体 Android 工具栏文本颜色