问题在myStmt.使用Jython执行update



我想插入一行我寻找并分割它。我确实喜欢

import os 
import fnmatch 
import java.sql as sql 
import java.lang as lang 
import time  
listingDir ='<%=odiRef.getOption("SOURCE_DIR")%>' 
dbConn = odiRef.getJDBCConnection("SRC") 
myStmt = dbConn.createStatement() 
tgFile=open(listingDir+os.sep+"FilePrecessed.txt", 'w') 
file=os.listdir(listingDir) 
for x in file:   
  if fnmatch.fnmatch(x,"FAP*.*"):     
    if '2' in x:      
      sourceFileNameParts = x.split('_')                
      dateVar =  sourceFileNameParts[1]   
      print dateVar
      myStmt.executeUpdate( "INSERT INTO CONTINENTS VALUES ( NULL,NULL,dateVar)" )

我有一个错误,即使这列有一个字符串类型在我的表声明。我在myStmt之前做过str(dateVar)。执行更新,以确保dateVar是一个字符串,但错误仍然在这里。

当我运行这段代码时,我在myStmt.executeUpdate( "INSERT INTO CONTINENTS VALUES ( NULL,NULL,dateVar)" )上有一个错误,它不接受dateVar,为什么!!

注意:当我使用例如myStmt.executeUpdate( "INSERT INTO CONTINENTS VALUES ( NULL,NULL,'toto')" )时,它与我一起工作

如何解决这个问题?

像这样做

myStmt.executeUpdate( "INSERT INTO CONTINENTS VALUES ( NULL,NULL," + dateVar + ")" )

相关内容

  • 没有找到相关文章

最新更新