有些人可以使用新的用户定义函数复制CHARINDEX。 (使用instr)
IF(CHARINDEX('(G)',v_username) = 0) THEN
mysql版本。如果能保持功能相同,我的迁移将变得更加顺畅。
IF(INSTR(v_username,'(G)') = 0) THEN
答案 0 :(得分:1)
是的,这可以做到。一种方法是创建一个包装CharIndex的user-defined function。
-- CHARINDEX wrapper.
CREATE FUNCTION INSTR
(
@Source NVARCHAR(255), -- Search this..
@Find NVARCHAR(255) -- ...for this.
)
RETURNS NVARCHAR(255)
AS
BEGIN
RETURN CHARINDEX(@Find, @Source)
END
这种方法的缺点是UDF在性能方面无法与本机功能竞争。
您可以通过查看common language runtime来减少影响。 CLR允许您编写编译为本机代码的函数,SP等。
所有事情都考虑在内;我建议您更新代码。虽然它们可能是漫长而痛苦的,但迁移是一次性的任务。