python string, best way to concat

dennisearlevans at gmail.com dennisearlevans at gmail.com
Wed Aug 27 16:31:51 EDT 2014


  Hi,

  Sorry about the simple question but I am very new to Python. 

  Anyway, I have a function that will be used to call a stored procedure and I need to format the string with the correct number of parameter markers for the ODBC driver, fairly standard stuff.   

  What I have works but looks ugly, is there a better way to build or concatenate a string or is a list or a tuple a better option?

the function looks like this

  def callSp(self, schema, spName) :
   sqlCode = "{call " + schema + "." + spName + "("
   par_Markers = ""
   y = len(self.param)
   x = 0
   while x < y :
     par_Markers = par_Markers.join("?")
     if (x < y - 1) :
       par_Markers = par_Markers.join(", ")
     x += 1
   self.cmdText = sqlCode + par_Markers + ")}"
   self.ExecuteCursor()

   return

self.param is a list of parameters.  sself.cmdText is the text that will be used to call the stored procedure.

the function would be called like this

  class.AddParameter(some value 1)
  class.AddParameter(some value 2) 
  callSp("schemaName", "storedProcedureName")
  
  the self.cmdText will look like this just before the ExecuteCursor call 

  "{call schemaName.StoredProcedureName(?, ?)}"

  the code works, but as I said is a bit ugly, is there better methods?

  thanks 

  Dennis
  



More information about the Python-list mailing list