如何使用scala.dbc执行count命令?

时间:2011-03-04 14:29:21

标签: sql-server scala

我正在尝试连接到MS / SQL服务器并执行'count'语句。我达到了这个目标:

import scala.dbc._
import scala.dbc.Syntax._
import scala.dbc.syntax.Statement._
import java.net.URI

object MsSqlVendor extends Vendor {
    val uri = new URI("jdbc:sqlserver://173.248.X.X:Y/DataBaseName")
    val user = "XXX"
    val pass = "XXX"

    val retainedConnections = 5
    val nativeDriverClass = Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 
    val urlProtocolString = "jdbc:sqlserver:"
}

object Main {
      def main(args: Array[String]) {
      println("Hello, world!")

      val db = new Database(MsSqlVendor)

      val count = db.executeStatement {
        select (count) from (technical)
        }


      println("%d rows counted", count)
      }
}

我收到一条错误消息:“dbc.syntax.Statement.SelectZygote类型的scala.dbc.syntax.Statement.select不接受参数”

如何设置?

1 个答案:

答案 0 :(得分:0)

这可能是一个问题:

val count = db.executeStatement {
        select (count) from (technical)
        }

声明中的count指的是val count,而不是其他count。不过,您报告的另一个问题是。任何地方都没有counttechnical定义。也许在你找到这个片段的其他地方缺少它。以下编译,虽然任何人都猜测它是否符合您的要求:

val countx = db.executeStatement {
    select fields "count" from "technical"
}

无论如何,我认为scala.dbc早已被弃用了。但是,我找不到任何弃用通知,它仍然链接在库jar上,甚至在主干上。