Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
suliangchun
dbeaver
提交
4e77ec32
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,发现更多精彩内容 >>
提交
4e77ec32
编写于
4月 10, 2018
作者:
S
serge-rider
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
#3287 SQL Server: read table description
上级
3e5e1adc
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
70 addition
and
2 deletion
+70
-2
plugins/org.jkiss.dbeaver.ext.generic/src/org/jkiss/dbeaver/ext/generic/model/GenericTable.java
...src/org/jkiss/dbeaver/ext/generic/model/GenericTable.java
+4
-0
plugins/org.jkiss.dbeaver.ext.mssql/OSGI-INF/l10n/bundle.properties
...g.jkiss.dbeaver.ext.mssql/OSGI-INF/l10n/bundle.properties
+4
-1
plugins/org.jkiss.dbeaver.ext.mssql/src/org/jkiss/dbeaver/ext/mssql/model/SQLServerTable.java
...src/org/jkiss/dbeaver/ext/mssql/model/SQLServerTable.java
+62
-1
未找到文件。
plugins/org.jkiss.dbeaver.ext.generic/src/org/jkiss/dbeaver/ext/generic/model/GenericTable.java
浏览文件 @
4e77ec32
...
...
@@ -209,6 +209,10 @@ public class GenericTable extends JDBCTable<GenericDataSource, GenericStructCont
return
description
;
}
public
void
setDescription
(
String
description
)
{
this
.
description
=
description
;
}
@Override
public
synchronized
DBSObject
refreshObject
(
@NotNull
DBRProgressMonitor
monitor
)
throws
DBException
{
...
...
plugins/org.jkiss.dbeaver.ext.mssql/OSGI-INF/l10n/bundle.properties
浏览文件 @
4e77ec32
...
...
@@ -6,4 +6,7 @@ sqlserver.dialog.connection.header=SQL Server Connection Settings
sybase.dialog.connection.header
=
Sybase Connection Settings
datasource.mssql.description
=
SQL Server datasource
datasource.sybase.description
=
Sybase/SAP ASE datasource
\ No newline at end of file
datasource.sybase.description
=
Sybase/SAP ASE datasource
meta.org.jkiss.dbeaver.ext.mssql.model.SQLServerTable.description.name
=
Description
meta.org.jkiss.dbeaver.ext.mssql.model.SQLServerTable.description.description
=
Table description
plugins/org.jkiss.dbeaver.ext.mssql/src/org/jkiss/dbeaver/ext/mssql/model/SQLServerTable.java
浏览文件 @
4e77ec32
...
...
@@ -16,9 +16,20 @@
*/
package
org.jkiss.dbeaver.ext.mssql.model
;
import
org.jkiss.dbeaver.ext.generic.model.*
;
import
org.jkiss.dbeaver.DBException
;
import
org.jkiss.dbeaver.ext.generic.model.GenericDataSource
;
import
org.jkiss.dbeaver.ext.generic.model.GenericStructContainer
;
import
org.jkiss.dbeaver.ext.generic.model.GenericTable
;
import
org.jkiss.dbeaver.model.DBPOverloadedObject
;
import
org.jkiss.dbeaver.model.DBUtils
;
import
org.jkiss.dbeaver.model.exec.jdbc.JDBCPreparedStatement
;
import
org.jkiss.dbeaver.model.exec.jdbc.JDBCResultSet
;
import
org.jkiss.dbeaver.model.exec.jdbc.JDBCSession
;
import
org.jkiss.dbeaver.model.meta.Property
;
import
org.jkiss.dbeaver.model.runtime.DBRProgressMonitor
;
import
org.jkiss.dbeaver.model.struct.DBSObject
;
import
java.sql.SQLException
;
/**
* SQL Server table
...
...
@@ -34,4 +45,54 @@ public class SQLServerTable extends GenericTable implements DBPOverloadedObject
//return getSchema().getName() + "." + getName();
return
getName
();
}
@Override
public
String
getDescription
()
{
return
super
.
getDescription
();
}
@Property
(
viewable
=
true
,
order
=
100
)
public
String
getDescription
(
DBRProgressMonitor
monitor
)
throws
DBException
{
String
description
=
getDescription
();
if
(
description
!=
null
||
!
isSqlServer
())
{
return
description
;
}
// Query row count
try
(
JDBCSession
session
=
DBUtils
.
openUtilSession
(
monitor
,
getDataSource
(),
"Read table description"
))
{
DBSObject
defaultDatabase
=
getDataSource
().
getDefaultObject
();
boolean
switchSchema
=
defaultDatabase
!=
null
&&
defaultDatabase
!=
getCatalog
();
try
(
JDBCPreparedStatement
dbStat
=
session
.
prepareStatement
(
(
switchSchema
?
"USE "
+
DBUtils
.
getQuotedIdentifier
(
getCatalog
())
+
";\n"
:
""
)
+
"SELECT cast(value as varchar(8000)) as value "
+
"FROM fn_listextendedproperty ('MS_DESCRIPTION', 'schema', ?, 'table', ?, default, default);\n"
+
(
switchSchema
?
"USE "
+
DBUtils
.
getQuotedIdentifier
(
defaultDatabase
)
+
";\n"
:
""
)))
{
dbStat
.
setString
(
1
,
getSchema
().
getName
());
dbStat
.
setString
(
2
,
getName
());
try
(
JDBCResultSet
dbResult
=
dbStat
.
executeQuery
())
{
if
(
dbResult
.
next
())
{
description
=
dbResult
.
getString
(
1
);
}
else
{
description
=
""
;
}
}
}
catch
(
SQLException
e
)
{
throw
new
DBException
(
e
,
getDataSource
());
}
}
setDescription
(
description
);
return
description
;
}
@Override
public
SQLServerDataSource
getDataSource
()
{
return
(
SQLServerDataSource
)
super
.
getDataSource
();
}
private
boolean
isSqlServer
()
{
return
((
SQLServerMetaModel
)
getDataSource
().
getMetaModel
()).
isSqlServer
();
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录