2

我的 Ruby 脚本中有一个多行 SQL 命令字符串。我正在向 SQL 命令字符串添加一些额外的行,并希望用一些内嵌注释来补充它。

mysql.query("CREATE TABLE If NOT EXISTS #{table}(
    application varchar(255),
    eventType varchar(255),
    eventTs datetime,
    eventDayWeek int,
    newColumnHere int, #Hello, I would like to be a comment
    eventHourDay int,

    ....)")

如何在一组引号中添加代码注释?

4

2 回答 2

3

MySQL 确实支持注释语法,因此您的代码应该按原样工作。但是,我更喜欢使用“heredoc”:

mysql.query <<END
CREATE TABLE If NOT EXISTS #{table}(
    application varchar(255),
    eventType varchar(255),
    eventTs datetime,
    eventDayWeek int,
    newColumnHere int, #Hello, I would like to be a comment
    eventHourDay int,

    ....)
END
于 2013-06-07T21:30:36.783 回答
2

您可以将字符串一分为二,或者包含一条 SQL 注释。

对于第一个选项:

"CREATE TABLE ...
newColumnHere int, " +
# comment in ruby here
"eventHourDay int, ...

或第二个选项:

newColumnHere int,  -- SQL comments from double dash to end of line
eventHourDay int,
于 2013-06-07T21:30:32.413 回答