Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
suliangchun
dbeaver
提交
2b1dba59
D
dbeaver
项目概览
suliangchun
/
dbeaver
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
dbeaver
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
2b1dba59
编写于
8月 26, 2021
作者:
S
Serge Rider
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
#13694 Redshift procedures read fix (correct oid + structure assistant)
上级
8f4b7c3f
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
12 addition
and
8 deletion
+12
-8
plugins/org.jkiss.dbeaver.ext.greenplum/src/org/jkiss/dbeaver/ext/greenplum/model/GreenplumSchema.java
...rg/jkiss/dbeaver/ext/greenplum/model/GreenplumSchema.java
+1
-1
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/model/PostgreProcedure.java
.../jkiss/dbeaver/ext/postgresql/model/PostgreProcedure.java
+1
-1
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/model/PostgreSchema.java
...org/jkiss/dbeaver/ext/postgresql/model/PostgreSchema.java
+1
-1
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/model/PostgreStructureAssistant.java
...eaver/ext/postgresql/model/PostgreStructureAssistant.java
+9
-5
未找到文件。
plugins/org.jkiss.dbeaver.ext.greenplum/src/org/jkiss/dbeaver/ext/greenplum/model/GreenplumSchema.java
浏览文件 @
2b1dba59
...
...
@@ -130,7 +130,7 @@ public class GreenplumSchema extends PostgreSchema {
@Nullable
PostgreProcedure
object
,
@Nullable
String
objectName
)
throws
SQLException
{
JDBCPreparedStatement
dbStat
=
session
.
prepareStatement
(
"SELECT p.oid,p.*,"
+
"SELECT p.oid
as poid
,p.*,"
+
(
session
.
getDataSource
().
isServerVersionAtLeast
(
8
,
4
)
?
"pg_catalog.pg_get_expr(p.proargdefaults, 0)"
:
"NULL"
)
+
" as arg_defaults,d.description\n"
+
"FROM pg_catalog.pg_proc p\n"
+
"LEFT OUTER JOIN pg_catalog.pg_description d ON d.objoid=p.oid\n"
+
...
...
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/model/PostgreProcedure.java
浏览文件 @
2b1dba59
...
...
@@ -131,7 +131,7 @@ public class PostgreProcedure extends AbstractProcedure<PostgreDataSource, Postg
}
private
void
loadInfo
(
DBRProgressMonitor
monitor
,
ResultSet
dbResult
)
{
this
.
oid
=
JDBCUtils
.
safeGetLong
(
dbResult
,
"oid"
);
this
.
oid
=
JDBCUtils
.
safeGetLong
(
dbResult
,
"
p
oid"
);
setName
(
JDBCUtils
.
safeGetString
(
dbResult
,
"proname"
));
this
.
ownerId
=
JDBCUtils
.
safeGetLong
(
dbResult
,
"proowner"
);
this
.
languageId
=
JDBCUtils
.
safeGetLong
(
dbResult
,
"prolang"
);
...
...
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/model/PostgreSchema.java
浏览文件 @
2b1dba59
...
...
@@ -1079,7 +1079,7 @@ public class PostgreSchema implements
PostgreServerExtension
serverType
=
owner
.
getDataSource
().
getServerType
();
String
oidColumn
=
serverType
.
getProceduresOidColumn
();
// Hack for Redshift SP support
JDBCPreparedStatement
dbStat
=
session
.
prepareStatement
(
"SELECT p."
+
oidColumn
+
",p.*,"
+
"SELECT p."
+
oidColumn
+
"
as poid
,p.*,"
+
(
session
.
getDataSource
().
isServerVersionAtLeast
(
8
,
4
)
?
"pg_catalog.pg_get_expr(p.proargdefaults, 0)"
:
"NULL"
)
+
" as arg_defaults,d.description\n"
+
"FROM pg_catalog."
+
serverType
.
getProceduresSystemTable
()
+
" p\n"
+
"LEFT OUTER JOIN pg_catalog.pg_description d ON d.objoid=p."
+
oidColumn
+
"\n"
+
...
...
plugins/org.jkiss.dbeaver.ext.postgresql/src/org/jkiss/dbeaver/ext/postgresql/model/PostgreStructureAssistant.java
浏览文件 @
2b1dba59
...
...
@@ -31,7 +31,10 @@ import org.jkiss.dbeaver.model.impl.struct.AbstractObjectReference;
import
org.jkiss.dbeaver.model.impl.struct.RelationalObjectType
;
import
org.jkiss.dbeaver.model.runtime.DBRProgressMonitor
;
import
org.jkiss.dbeaver.model.sql.SQLUtils
;
import
org.jkiss.dbeaver.model.struct.*
;
import
org.jkiss.dbeaver.model.struct.DBSObject
;
import
org.jkiss.dbeaver.model.struct.DBSObjectFilter
;
import
org.jkiss.dbeaver.model.struct.DBSObjectReference
;
import
org.jkiss.dbeaver.model.struct.DBSObjectType
;
import
org.jkiss.utils.CommonUtils
;
import
java.sql.SQLException
;
...
...
@@ -210,15 +213,16 @@ public class PostgreStructureAssistant extends JDBCStructureAssistant<PostgreExe
@NotNull
Collection
<?
super
DBSObjectReference
>
objects
)
throws
SQLException
,
DBException
{
DBRProgressMonitor
monitor
=
session
.
getProgressMonitor
();
PostgreServerExtension
serverType
=
database
.
getDataSource
().
getServerType
();
QueryParams
queryParams
=
new
QueryParams
(
"pp.oid, pp.*"
,
"pg_catalog.
pg_proc
pp"
,
"pp.
"
+
serverType
.
getProceduresOidColumn
()
+
" as p
oid, pp.*"
,
"pg_catalog.
"
+
serverType
.
getProceduresSystemTable
()
+
"
pp"
,
"pp.proname"
,
schemas
,
"pp.pronamespace"
,
"pp.proname"
);
queryParams
.
setWhereClause
(
"pp.proname NOT LIKE '\\_%'"
);
//
queryParams.setWhereClause("pp.proname NOT LIKE '\\_%'");
queryParams
.
setCaseSensitive
(
params
.
isCaseSensitive
());
if
(
params
.
isSearchInComments
())
{
queryParams
.
setDescriptionClause
(
"obj_description(pp.oid, 'pg_proc')"
);
...
...
@@ -236,7 +240,7 @@ public class PostgreStructureAssistant extends JDBCStructureAssistant<PostgreExe
while
(!
monitor
.
isCanceled
()
&&
dbResult
.
next
())
{
final
long
schemaId
=
JDBCUtils
.
safeGetLong
(
dbResult
,
"pronamespace"
);
final
String
procName
=
JDBCUtils
.
safeGetString
(
dbResult
,
"proname"
);
final
long
procId
=
JDBCUtils
.
safeGetLong
(
dbResult
,
"oid"
);
final
long
procId
=
JDBCUtils
.
safeGetLong
(
dbResult
,
"
p
oid"
);
final
PostgreSchema
procSchema
=
database
.
getSchema
(
session
.
getProgressMonitor
(),
schemaId
);
if
(
procSchema
==
null
)
{
log
.
debug
(
"Procedure's schema '"
+
schemaId
+
"' not found"
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录