数据库
PyCharm 会显示您 选择要显示的数据库。 如果您有许多数据库,这会很有用。 此外,通过这种方式,您可以定义要内省的数据库。 在 内省期间,PyCharm 会从数据库加载元数据,并在稍后使用这些数据。
数据库( )位于 数据库 工具窗口中。

创建数据库
在 数据库 工具窗口中,展开数据源树,直到数据库节点。
右键点击数据源或数据库节点,然后选择 。
在打开的 创建 对话框中,在 名称 字段中输入您的数据库名称。
在 预览(P) 窗格中,您可以查看并更改生成的 SQL 代码。
点击 确定 以添加您的数据库。

显示数据库
显示和隐藏数据库
在 数据库 工具窗口中,右键点击某个数据源并转到 。 选中或清除要显示或隐藏的数据库的复选框。 按 Enter。
点击数据源名称附近的 第 N 个(共 M 个) 链接。 在数据库和架构选择窗口中,选中或清除要显示或隐藏的数据库的复选框。 按 Enter。

使用基于模式的筛选器
若要显示并内省名称与正则表达式模式匹配的所有数据库,请执行以下操作:
在 数据库 工具窗口中,点击数据源名称附近的 第 N 个(共 M 个) 链接。
在数据库和架构选择器中,点击位于 所有数据库 附近的 添加模式 按钮。

在新的筛选节点中,定义正则表达式。 有关语法,请点击输入字段附近的 用于数据库的正则表达式。 有关语法的更多信息,请参阅 正则表达式构造摘要。
按 Enter 以在选择器中应用筛选器。

按 Enter 以在 数据库 工具窗口中应用筛选器。
可以在任意节点下添加带筛选器的筛选节点,包括另一个筛选节点。
显示所有架构与数据库
若要在 数据库 工具窗口( )中显示所有可用的数据库,点击 显示选项菜单 按钮并选择 所有命名空间 选项。
已启用

已禁用

强制刷新架构信息
强制刷新 操作会清除缓存中的数据源信息,并从头开始重新加载。
在 数据库 工具窗口中,右键点击某个数据源并选择 。
为数据库生成图表
在 数据库 工具窗口中,右键点击某个数据库并选择 。

正则表达式构造摘要
有关完整信息,请参阅 完整 Java 正则表达式语法说明 和 在 Java 中使用正则表达式。
构造 | 匹配 |
|---|---|
字符 | |
| 字符 x |
| 反斜杠字符 |
| 八进制值为 0n 的字符(0 <= n <= 7) |
| 八进制值为 0nn 的字符(0 <= n <= 7) |
| 八进制值为 0mnn 的字符(0 <= m <= 3,0 <= n <= 7) |
| 十六进制值为 0xhh 的字符 |
| 十六进制值为 0xhhhh 的字符 |
| 制表符('\u0009') |
| 换行符('\u000A') |
| 回车符('\u000D') |
| 换页符('\u000C') |
| 响铃字符('\u0007') |
| 转义字符('\u001B') |
| 与 x 对应的控制字符 |
字符类 | |
| a、b 或 c(简单类) |
| 除 a、b 或 c 外的任意字符(取反) |
| a 到 z 或 A 到 Z(范围,包含端点) |
| a 到 d,或 m 到 p:[a-dm-p](并集) |
| d、e 或 f(交集) |
| a 到 z,除 b 和 c 外:[ad-z](差集) |
| a 到 z,且非 m 到 p:[a-lq-z](差集) |
预定义字符类 | |
| 任意字符(可能匹配也可能不匹配行终止符) |
| 数字:[0-9] |
| 非数字:[^0-9] |
| 空白字符:[ \t\n\x0B\f\r] |
| 非空白字符:[^\s] |
| 单词字符:[a-zA-Z_0-9] |
| 非单词字符:[^\w] |
POSIX 字符类(仅限 US-ASCII) | |
| 小写字母字符:[a-z] |
| 大写字母字符:[A-Z] |
| 所有 ASCII:[\x00-\x7F] |
| 字母字符:[\p{Lower}\p{Upper}] |
| 十进制数字:[0-9] |
| 字母数字字符:[\p{Alpha}\p{Digit}] |
| 标点符号:以下之一 !"#$%&'()*+,-./:;=>?@[\]^_`{|}~ |
| 可见字符:[\p{Alnum}\p{Punct}] |
| 可打印字符:[\p{Graph}\x20] |
| 空格或制表符:[ \t] |
| 控制字符:[\x00-\x1F\x7F] |
| 十六进制数字:[0-9a-fA-F] |
| 空白字符:[ \t\n\x0B\f\r] |
java.lang.Character 类(简单 Java 字符类型) | |
| 等同于 java.lang.Character.isLowerCase() |
| 等同于 java.lang.Character.isUpperCase() |
| 等同于 java.lang.Character.isWhitespace() |
| 等同于 java.lang.Character.isMirrored() |
用于 Unicode 块与类别的类 | |
| 希腊块中的字符(简单块) |
| 大写字母(简单类别) |
| 货币符号 |
| 除希腊块中的字符外的任意字符(取反) |
| 除大写字母外的任意字母(差集) |
边界匹配器 | |
| 行首 |
| 行尾 |
| 单词边界 |
| 非单词边界 |
| 输入的开始 |
| 上一次匹配的结束 |
| 输入的结束,但最后的行终止符(如果有)除外 |
| 输入的结束 |
贪婪量词 | |
| X,出现一次或不出现 |
| X,出现零次或多次 |
| X,出现一次或多次 |
| X,恰好出现 n 次 |
| X,至少出现 n 次 |
| X,至少出现 n 次但不超过 m 次 |
勉强量词 | |
| X,出现一次或不出现 |
| X,出现零次或多次 |
| X,出现一次或多次 |
| X,恰好出现 n 次 |
| X,至少出现 n 次 |
| X,至少出现 n 次但不超过 m 次 |
占有量词 | |
| X,出现一次或不出现 |
| X,出现零次或多次 |
| X,出现一次或多次 |
| X,恰好出现 n 次 |
| X,至少出现 n 次 |
| X,至少出现 n 次但不超过 m 次 |
逻辑运算符 | |
| X,后跟 Y |
| X 或 Y |
| X,作为捕获组 |
反向引用 | |
| 第 n 个捕获组匹配的内容 |
引用 | |
| 不匹配任何内容,但引用紧随其后的字符 |
| 不匹配任何内容,但引用直到 \E 为止的所有字符 |
| 不匹配任何内容,但结束由 \Q 开始的引用 |
特殊构造(非捕获) | |
| X,作为非捕获组 |
| 不匹配任何内容,但开启或关闭匹配标志 |
| X,作为非捕获组,并开启或关闭给定标志 |
| X,通过零宽度正向先行断言 |
| X,通过零宽度负向先行断言 |
| X,通过零宽度正向后行断言 |
| X,通过零宽度负向后行断言 |
| X,作为独立的非捕获组 |