使用 Datagrip 的整个数据库的脚本模式
Script schema of the entire database with Datagrip
是否可以使用 datagrip 编写整个数据库(SQL 服务器或 Postgres)的架构脚本?
我知道我可以获得 table 的 DDL 并查看每个存储过程/函数的源代码。
我可以一次为数据库中的所有对象获取一个脚本吗?
或者,有没有办法一次搜索所有例程的代码,比如我需要找到哪些正在使用 #table
temp table?
目前只有转储表有效。在将于 8 月底可用的 2016.3 EAP 中,将集成 mysqldump 和 pg_dump。
我今天一直在找这个,刚刚找到了。如果您右键单击要复制的架构并选择 "Copy DDL",这会将创建脚本复制到剪贴板。
要回答问题的第二部分:在所有程序中快速简便地搜索 #table
的方法,您可以执行以下查询
SELECT *
FROM information_schema.routines
WHERE routine_definition LIKE '%#table%'
从 2018.2 开始,有一个名为 SQL 生成器的功能。它将为 database/schema 生成带有多个可用选项的整个 DDL。
结果是:
但是:
如果您只想了解 table 的使用位置,请使用名为 Find Usages 的专用功能(Alt+F7 或 table 上的上下文菜单姓名)
是否可以使用 datagrip 编写整个数据库(SQL 服务器或 Postgres)的架构脚本?
我知道我可以获得 table 的 DDL 并查看每个存储过程/函数的源代码。
我可以一次为数据库中的所有对象获取一个脚本吗?
或者,有没有办法一次搜索所有例程的代码,比如我需要找到哪些正在使用 #table
temp table?
目前只有转储表有效。在将于 8 月底可用的 2016.3 EAP 中,将集成 mysqldump 和 pg_dump。
我今天一直在找这个,刚刚找到了。如果您右键单击要复制的架构并选择 "Copy DDL",这会将创建脚本复制到剪贴板。
要回答问题的第二部分:在所有程序中快速简便地搜索 #table
的方法,您可以执行以下查询
SELECT *
FROM information_schema.routines
WHERE routine_definition LIKE '%#table%'
从 2018.2 开始,有一个名为 SQL 生成器的功能。它将为 database/schema 生成带有多个可用选项的整个 DDL。
结果是:
但是: 如果您只想了解 table 的使用位置,请使用名为 Find Usages 的专用功能(Alt+F7 或 table 上的上下文菜单姓名)