由于无法找到基于Linux的SQL美化器来管道我的mySQL片段,我将满足于简单地将我的mySQL代码制成表格。我想把这个转过来:
CREATE TABLE IF NOT EXISTS GROUP
(
ID INT NOT NULL AUTO_INCREMENT,
GROUPNAME VARCHAR(15) UNIQUE,
ACTIVE BOOLEAN DEFAULT TRUE,
PRIMARY KEY(ID)
)ENGINE=InnoDB
进入这个
CREATE TABLE IF NOT EXISTS GROUP
(
ID INT NOT NULL AUTO_INCREMENT,
GROUPNAME VARCHAR(15) UNIQUE,
ACTIVE BOOLEAN DEFAULT TRUE,
PRIMARY KEY(ID)
)ENGINE=InnoDB
但如果我这样做:Tabularize /'
我会得到
CREATE TABLE IF NOT EXISTS GROUP
(
ID INT NOT NULL AUTO_INCREMENT,
USERID INT NOT NULL,
GROUPNAME VARCHAR(15) UNIQUE,
ACTIVE BOOLEAN DEFAULT TRUE,
PRIMARY KEY(ID),
FOREIGN KEY (USERID) REFERENCES USER(ID)
)ENGINE=InnoDB
如何仅在标识符后的第一个空格上对齐(或者,在哪里可以找到命令行SQL美化器= )?
为了避免表格化重复您的模式以匹配其他字段,您必须锚定它。 在这种情况下,一开始更有意义,所以你可以试试像这样:
:Tab /^'s*'w*
您的行中只有一个具有此模式的字段。但要小心——它在您的示例中可能不会发生,但这与绝大多数行匹配,因此,仅在某个范围内应用表格化可能是一个好主意(要么显式或通过在可视模式下选择线条)。
为了更深入地了解已经给出的答案,另一种方法是将行的其余部分包含在匹配的分隔符中:
:Tab /'d.*
这将对齐从第一个数字开始的所有内容,无论后面有多少数字,也无论之前出现什么。根据具体情况,这可能是比指定定位点更好的选择。