私は springsource が初めてで、これが私の最初のプロジェクトです。フラット ファイルを読み取って MS SQL Server 2008 テーブルに保存していますが、以下のコマンドは正しくありません。モデルとして使用している同様のプロジェクトで動作します (コンポーネントをコピーし、独自の入力ファイル形式と独自の SQL サーバー テーブルを読み取るようにコマンドを変更しました)。
プロジェクト用に作成したテーブルとモデルのテーブルの違いは、ソース モデルのように、出力テーブルには主キーが 1 つしかないため、テーブルには主キーと副キーが 1 つずつ含まれていることです。以下は「悪い」挿入文です。どんな助けでも大歓迎です。
String sql = "insert into dbo.IN136_DMV_USED_CAR_SALES (EXT_INF_LOAD_ID, IN136_ID, " +
"DEALER_NUM, " +
"VSL_PURCHASE_DATE," +
"OWNERSHIP_ISSUED_DATE, " +
"LAST_TRANSFER_DATE, " +
"ODOMETER_CURRENT_DATE, " +
"WORK_DATE, " +
"PURCHASE_PRICE, " +
"VIN_HIN, " +
"CURRENT_LICENSE, " +
"REG_OWNER_NAME, " +
"REG_OWNER_ADDRESS2, " +
"REG_OWNER_ADDRESS3, " +
"REG_OWNER_CITY_OR_STATE) values (?, NEWID(), ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
コンソールから見える唯一のものは次のとおりです。
counter is=1 IN136DataRecod=boe.eai.provider.dmv.IN136DataRecord@d5c0f9and sql が失敗しようとしています/support/sql-error-codes.xml] logger.debug DMVErr, e=org.springframework.jdbc.BadSqlGrammarException: PreparedStatementCallback; bad SQL grammar [insert into dbo.IN136_DMV_USED_CAR_SALES (EXT_INF_LOAD_ID, IN136_ID, DEALER_NUM, VSL_PURCHASE_DATE,OWNERSHIP_ISSUED_DATE, LAST_TRANSFER_DATE, ODOMETER_CURRENT_DATE, WORK_DATE, PURCHASE_PRICE, VIN_HIN, CURRENT_LICENSE, REG_OWNER_NAME, REG_OWNER_ADDRESS2, REG_OWNER_ADDRESS3, REG_OWNER_CITY_OR_STATE) values (?, NEWID(), ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)]; ネストされた例外は java.sql.SQLException: Invalid parameter index 15 です。
よろしくお願いいたします。