0
我在Oracle中运行此函数时遇到问题。我似乎无法弄清楚发生了什么事。我不断收到“SQL命令未正确结束18行”。我认为这与我的即时SQL有关,但我不完全肯定。有什么想法吗?即时SQL - 命令未正确结束
create or replace
FUNCTION COMPARE_USER(
indexNumber IN varchar,
firstName IN varchar,
lastName IN varchar,
email IN varchar,
department IN varchar,
userLocation IN varchar,
userType IN varchar,
active IN varchar
)
RETURN CHAR
IS
tableName varchar(50) := 'TEST_USER';
boolCheck char;
rowCount int;
BEGIN
EXECUTE IMMEDIATE
'SELECT COUNT(*) FROM ' || tableName ||
' WHERE INDEX_NUMBER = ' || indexNumber ||
' AND FIRST_NAME = ' || firstName ||
' AND LAST_NAME = ' || lastName ||
' AND EMAIL = ' || email ||
' AND DEPARTMENT = ' || department ||
' AND USER_LOCATION = ' || userLocation ||
' AND USER_TYPE = ' || userType ||
' AND ACTIVE = ' || active
INTO rowCount;
IF rowCount = 0 Then
boolCheck := 'N';
Else
boolCheck := 'Y';
End If;
RETURN boolCheck;
END COMPARE_USER;