Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 如果不存在,则开始更新插入错误_Mysql_Asp.net_Vb.net - Fatal编程技术网

Mysql 如果不存在,则开始更新插入错误

Mysql 如果不存在,则开始更新插入错误,mysql,asp.net,vb.net,Mysql,Asp.net,Vb.net,我看着代码,一遍又一遍地检查,真的不知道我的代码发生了什么,下面出现了错误- strSql= "BEGIN if (not EXISTS (select empno tablenameA where empno = @empno)) " & _ " begin " & _ " Update tablenameA set ota_verifier = @ota_verifier, ota_approval = @ota_app

我看着代码,一遍又一遍地检查,真的不知道我的代码发生了什么,下面出现了错误-

strSql=     "BEGIN if (not EXISTS (select empno tablenameA where empno = @empno)) " & _
            " begin " & _
            " Update tablenameA set ota_verifier = @ota_verifier, ota_approval = @ota_approval, ota_payroll = @ota_payroll, ota_hr = @ota_hr, " & _
            " ota_viewall = @ota_viewall, ota_HRMng = @ota_HRMng, ota_MD = @ota_MD, ota_SP=@ota_SP " & _
            " WHERE empno =  @empno " & _
            " end    " & _
            " else   " & _
            " begin  " & _
            " Insert INTO tablenameA (empno, ota_empname, ota_deptcode, ota_verifier, ota_approval,  ota_payroll, ota_hr, ota_viewall, ota_AD, ota_HRMng, ota_MD, ota_SP) " & _
            " VALUES (@empno, @ota_empname, @ota_deptcode, @ota_verifier, @ota_approval, @ota_payroll, @ota_hr, @ota_viewall, @ota_AD, @ota_HRMng, @ota_MD, @ota_SP) " & _
            "   end  " & _
            "   END "
“.”附近的语法不正确。关键字“else”附近的语法不正确


似乎您在
empno
tablename a之间的
关键字中缺少

strSql=     "BEGIN if (not EXISTS (select empno tablenameA where empno = @empno)) "
**您需要从中添加**

strSql=     "BEGIN if (not EXISTS (select ota_empno FROM [GOGREEN].[dbo].[tbOvertimeAccess] where ota_empno = @ota_empno)) " & _
            " begin " & _
            " Update tbOvertimeAccess set ota_verifier = @ota_verifier, ota_approval = @ota_approval, ota_payroll = @ota_payroll, ota_hr = @ota_hr, " & _
            " ota_viewall = @ota_viewall, ota_HRMng = @ota_HRMng, ota_MD = @ota_MD, ota_SP=@ota_SP " & _
            " WHERE ota_empno =  @ota_empno " & _
            " end    " & _
            " else   " & _
            " begin  " & _
            " Insert INTO tbOvertimeAccess (ota_empno, ota_empname, ota_deptcode, ota_verifier, ota_approval,  ota_payroll, ota_hr, ota_viewall, ota_AD, ota_HRMng, ota_MD, ota_SP) " & _
            " VALUES (@ota_empno, @ota_empname, @ota_deptcode, @ota_verifier, @ota_approval, @ota_payroll, @ota_hr, @ota_viewall, @ota_AD, @ota_HRMng, @ota_MD, @ota_SP) " & _
            "   end  " & _
            "   END "
试试这个:

strSql=     "BEGIN if (not EXISTS (select empno FROM tablenameA where empno = @empno)) " & _
            " begin " & _
            " Update tablenameA set ota_verifier = @ota_verifier, ota_approval = @ota_approval, ota_payroll = @ota_payroll, ota_hr = @ota_hr, " & _
            " ota_viewall = @ota_viewall, ota_HRMng = @ota_HRMng, ota_MD = @ota_MD, ota_SP=@ota_SP " & _
            " WHERE empno =  @empno " & _
            " end    " & _
            " else   " & _
            " begin  " & _
            " Insert INTO tablenameA (empno, ota_empname, ota_deptcode, ota_verifier, ota_approval,  ota_payroll, ota_hr, ota_viewall, ota_AD, ota_HRMng, ota_MD, ota_SP) " & _
            " VALUES (@empno, @ota_empname, @ota_deptcode, @ota_verifier, @ota_approval, @ota_payroll, @ota_hr, @ota_viewall, @ota_AD, @ota_HRMng, @ota_MD, @ota_SP) " & _
            "   end  " & _
            "   END "