Delphi - 如何将字符串连接分成多行

标签 delphi delphi-2010 code-formatting line-breaks

我有一个很长的 SQL 文本,我想将其分配给查询 SQL。我按以下方式执行此操作:

SQL.Text:= 'SELECT T1.COLUMN1,T2.COLUMN2,T1COLUMN3..........,'+
          ' T1.COLUMNn FROM TABLE1 T1 INNER JOIN '+
          ' TABLE2 T2 ON T1.ID=T2.ID'+
          ' WHERE T1.COLUMN10=100'

实际的 SQL 比这个长 20 倍。我的问题是换行符。当我格式化源代码(Ctrl+D)时,它有时会保留我键入的行,但有时它会删除换行符,我会得到如下内容:

 'SELECT T1.COLUMN1,T2.COLUMN2,T1COLUMN3 ' + 'FROM TABLE1 T1 INNER JOIN '+  'TABLE2 T2 ON T1.ID=T2.ID'

这会导致“行太长(超过 1023 个字符)”错误。有趣的是,并非所有线路都会发生这种情况。我无法理解会受到影响的线路和不会受到影响的线路之间的区别。我需要在“+”号之后或之前换行。我该怎么做?

最佳答案

您还可以使用添加功能。

SQL.Clear;
SQL.ADD('SELECT T1.COLUMN1,T2.COLUMN2,T1COLUMN3..........,');
SQL.ADD(' T1.COLUMNn FROM TABLE1 T1 INNER JOIN');
SQL.ADD(' TABLE2 T2 ON T1.ID=T2.ID');
SQL.ADD(' WHERE T1.COLUMN10=100');

关于Delphi - 如何将字符串连接分成多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9663400/

相关文章:

Delphi 7 - ShellExecute 命令在某些情况下不起作用

delphi - 为什么 is 运算符在从不同模块传递实例时无法返回我期望的结果?

delphi - Delphi 2010 中 RadioGroup.ControlCount 的问题

delphi - Delphi中的静态多态

Delphi 2010 : New RTTI, 将属性值设置为任意值

delphi - 64 位 sharemem.pas/borlndmm.dll XE2

delphi - 如何转义 Free-Pascal 中的保留字?

具有常量值的 Python 列表

netbeans - NetBeans 中是否有任何隐藏的 Javascript 代码格式设置?

eclipse - 强制 Eclipse 源代码格式化程序在 80 个字符处换行的替代方法或方法?