我正在尝试连接到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不接受参数”
如何设置?
答案 0 :(得分:0)
这可能是一个问题:
val count = db.executeStatement {
select (count) from (technical)
}
声明中的count
指的是val count
,而不是其他count
。不过,您报告的另一个问题是。任何地方都没有count
和technical
定义。也许在你找到这个片段的其他地方缺少它。以下编译,虽然任何人都猜测它是否符合您的要求:
val countx = db.executeStatement {
select fields "count" from "technical"
}
无论如何,我认为scala.dbc早已被弃用了。但是,我找不到任何弃用通知,它仍然链接在库jar上,甚至在主干上。