为什么我的带双引号的cql查询不起作用,但是带单引号的问题可以起作用?

时间:2019-05-29 16:58:58

标签: cassandra-3.0 cassandra-driver

cql中是否不允许使用双引号?

运行此查询有效

val statement4 =
        s"""
           | INSERT INTO users (bucket,email,firstname,lastname,authprovider,password,confirmed,id,hasher,salt) VALUES
           | (1,'${testEnv.email}','fn','ln','${testEnv.loginInfo.providerID}','somePassword',false,${testEnv.mockHelperMethods.getUniqueID()},'someHasher','someSalt')
        """.stripMargin

但这不是(因为我使用双引号)

val statement4 =
        s"""
           | INSERT INTO users (bucket,email,firstname,lastname,authprovider,password,confirmed,id,hasher,salt) VALUES
           | (1,"${testEnv.email}","fn","ln","${testEnv.loginInfo.providerID}","somePassword",false,${testEnv.mockHelperMethods.getUniqueID()},"someHasher","someSalt")
        """.stripMargin

1 个答案:

答案 0 :(得分:0)

此行为可能来自cql,其中双引号用于确保对象名称(例如键空间,表或user-defined functions)的大小写,而单引号通常用于定界值。

请注意,如果不能使用单引号,则可以使用double-dollar sign来分隔这些值。