Batch file 如何修复DB21005E访问文件时出错;“DML.db2”;

Batch file 如何修复DB21005E访问文件时出错;“DML.db2”;,batch-file,db2,Batch File,Db2,我使用IBMDB2-c作为命令的数据库和批处理文件,但是当我尝试从数据库插入数据时,它显示错误“db2105e访问文件“DML.DB2”时出错” 我试图用一些代码来解决这个问题,但仍然不起作用 :Insert cls echo. SET /p id="Enter ID: " SET /p name="Enter Tool Name: " SET /p course="Enter qty: " SET /p price="Enter price: "

我使用IBMDB2-c作为命令的数据库和批处理文件,但是当我尝试从数据库插入数据时,它显示错误“db2105e访问文件“DML.DB2”时出错”

我试图用一些代码来解决这个问题,但仍然不起作用

:Insert
    cls
    echo.
    SET /p id="Enter ID: "
    SET /p name="Enter Tool Name: "
    SET /p course="Enter qty: "
    SET /p price="Enter price: "
    echo.
    echo.
    echo Processing...

    echo CONNECT TO TOOLSDB; >DML.db2
    echo INSERT INTO TOOL(tool_id,tool_name,tool_qty,tool_price) 
        VALUES(%tool_id%,'%tool_name%', %tool_qty%, %tool_price%); >>DML.db2

    db2cmd -c -w -i db2 -c -tf DML.db2
    pause >nul
    goto :Menu

我希望在填充字段后插入数据。希望有人能帮助我尝试完全限定文件名,例如使用变量存储文件名及其路径

例如:

...
set db2script="c:\your_path\DML.DB2"

echo CONNECT TO TOOLSDB; > %db2script%

echo INSERT INTO TOOL(tool_id,tool_name,tool_qty,tool_price) VALUES(%tool_id,'%tool_name%', %tool_qty%, %tool_price%); >> %db2script%

db2cmd -c -w -i db2 -c -tf %db2script%
...

尝试完全限定文件名,例如,使用变量存储文件名及其路径
set db2script=c:\your\u path\DML.DB2
(完全限定文件名),然后
echo…>%db2script%
和'echo Insert…>>%db2script%`,然后
db2cmd-c-w-i db2-c-tf%db2script%
值(%tool\u id%,'%tool\u name%,%tool\u qty%,%tool\u price%);>db2
不是一个命令。您需要
回显它。您还需要将它上面的行重定向到
DML.db2
。谢谢兄弟,它现在可以工作了