I'm splitting a long string into an array of strings, then I want to insert all of them to the database. I can easily loop through the array and insert one by one, but it seems very inefficient. Then I think there is a insertAll()
method. However, the insertAll()
method is defined like this:
def insertAll(values: U*)
This only accepts multiple U, but not an Array
or List
.
/* Insert a new Tag */
def insert(insertTags: Array[String])(implicit s: Session) {
var insertSeq: List[Tag] = List()
for(tag <- insertTags) {
insertSeq ++= new Tag(None, tag)
}
Tag.insertAll(insertSeq)
}
*Tag
is the table Object
This is the preliminary code I have written. It doesn't work because insertAll()
doesn't take Seq
. I hope there is a way to do this...so it won't generate an array length times SQL insertion clause.