我是springource的新手,这是我的第一个项目。我正在读取平面文件并将其保存到MS SQL Server 2008表,但下面的命令不正确。它适用于我作为模型使用的类似项目(我复制了组件并修改了命令以读取我自己的输入文件格式和我自己的SQL服务器表)。
我为项目创建的表与模型中的表之间的区别在于,我的表包含一个主键和一个辅助键,因为在源模型中,输出表只有一个主键。下面是“坏”插入语句,任何帮助将不胜感激。
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(), ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
这是我在控制台上唯一能看到的东西:
计数器= 1 IN136DataRecod=boe.eai.provider.dmv.IN136DataRecord@d5c0f9和sql是 即将失败的信息: org.springframework.beans.factory.xml.XmlBeanDefinitionReader - 从类路径资源加载XML bean定义 [org / springframework / jdbc / support / sql-error-codes.xml] logger.debug DMVErr,e = org.springframework.jdbc.BadSqlGrammarException: PreparedStatementCallback;糟糕的SQL语法[插入到 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)值(?,NEWID(),?,?, ?,?,?,?,?,?,?,?,?,?,?)];嵌套异常是 java.sql.SQLException:参数索引15无效。
提前感谢您的帮助
答案 0 :(得分:0)
我认为问题在于你的写作方式。
插入 dbo .IN136_DMV_USED_CAR_SALES
尝试删除架构名称。