我必须做一个pl / sql函数。我已经完成了它,但在服务器上它显示错误,但我不知道错误意味着什么。 有人能引导我走向正确的方向来完成这项功能吗?
这是代码: 显示错误
CREATE OR REPLACE FUNCTION sum_of_task_types(project project.project_no%TYPE)
RETURN NUMBER IS
task NUMBER;
BEGIN
SELECT COUNT(DISTINCT t.task_type_no)
INTO task
FROM project p, stage s, task t ;
WHERE user_input_var = p.project_no;
AND p.project_no = s.project_no;
AND s.stage_id = t.stage_id;
AND p.project = project;
RETURN task;
END;
/
- 使用函数
SELECT project_no, sum_of_task_types(project_no)project;
我不知道这里的代码是否清晰,所以我添加了一个显示代码本身图像的文档,错误如下所示:
CREATE OR REPLACE FUNCTION sum_of_task_types(project project.project_no%TYPE)
RETURN NUMBER IS
task NUMBER;
BEGIN
SELECT COUNT(DISTINCT t.task_type_no)
INTO task
FROM project p, stage s, task t
WHERE user_input_var = p.project_no
AND p.project_no = s.project_no
AND s.stage_id = t.stage_id
AND p.project = project
RETURN task;
END;
/
我现在已经这样做了,仍然会出错:
LINE/COL ERROR 6/5 PL/SQL: SQL Statement ignored 13/5 PL/SQL: ORA-00933: SQL command not properly ended
答案 0 :(得分:0)
只需添加';'在' AND p.project = project'指示sql语句的终止,这将变得没有错误。
答案 1 :(得分:0)
#include <iostream>
int main() {
for (int i=0; i < 100; i++) {
int die1 = (rand() % 6) + 1;
std::cout << "Generated random number: " << die1 << std::endl;
}
return 0;
}