Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
suliangchun
dbeaver
提交
5b9a0f7e
D
dbeaver
项目概览
suliangchun
/
dbeaver
与 Fork 源项目一致
从无法访问的项目Fork
通知
3
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,发现更多精彩内容 >>
提交
5b9a0f7e
编写于
8月 05, 2017
作者:
S
Serge Rider
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
#1969 DBUtils refactoring
上级
e307ca13
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
15 addition
and
11 deletion
+15
-11
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/runtime/sql/commands/SQLCommandInclude.java
...jkiss/dbeaver/runtime/sql/commands/SQLCommandInclude.java
+3
-3
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/editors/sql/syntax/SQLCompletionAnalyzer.java
.../dbeaver/ui/editors/sql/syntax/SQLCompletionAnalyzer.java
+3
-3
plugins/org.jkiss.dbeaver.model/src/org/jkiss/dbeaver/model/DBUtils.java
...ss.dbeaver.model/src/org/jkiss/dbeaver/model/DBUtils.java
+9
-5
未找到文件。
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/runtime/sql/commands/SQLCommandInclude.java
浏览文件 @
5b9a0f7e
...
...
@@ -22,6 +22,7 @@ import org.jkiss.dbeaver.DBException;
import
org.jkiss.dbeaver.DBeaverPreferences
;
import
org.jkiss.dbeaver.core.DBeaverCore
;
import
org.jkiss.dbeaver.core.DBeaverUI
;
import
org.jkiss.dbeaver.model.DBUtils
;
import
org.jkiss.dbeaver.model.exec.DBCSession
;
import
org.jkiss.dbeaver.model.exec.DBCStatistics
;
import
org.jkiss.dbeaver.model.sql.SQLControlCommand
;
...
...
@@ -52,9 +53,8 @@ public class SQLCommandInclude implements SQLControlCommandHandler {
throw
new
DBException
(
"Empty input file"
);
}
fileName
=
GeneralUtils
.
replaceVariables
(
fileName
,
new
GeneralUtils
.
MapResolver
(
scriptContext
.
getVariables
())).
trim
();
if
(
fileName
.
startsWith
(
"\""
)
&&
fileName
.
endsWith
(
"\""
))
{
fileName
=
fileName
.
substring
(
1
,
fileName
.
length
()
-
1
);
}
fileName
=
DBUtils
.
getUnQuotedIdentifier
(
fileName
,
"\""
);
fileName
=
DBUtils
.
getUnQuotedIdentifier
(
fileName
,
"'"
);
File
curFile
=
scriptContext
.
getSourceFile
();
File
incFile
=
curFile
==
null
?
new
File
(
fileName
)
:
new
File
(
curFile
.
getParent
(),
fileName
);
...
...
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/editors/sql/syntax/SQLCompletionAnalyzer.java
浏览文件 @
5b9a0f7e
...
...
@@ -280,7 +280,6 @@ class SQLCompletionAnalyzer
final
List
<
String
>
nameList
=
new
ArrayList
<>();
SQLDialect
sqlDialect
=
((
SQLDataSource
)
dataSource
).
getSQLDialect
();
String
quoteString
=
sqlDialect
.
getIdentifierQuoteString
();
{
// Regex matching MUST be very fast.
// Otherwise UI will freeze during SQL typing.
...
...
@@ -333,8 +332,9 @@ class SQLCompletionAnalyzer
// Fix names (convert case or remove quotes)
for
(
int
i
=
0
;
i
<
nameList
.
size
();
i
++)
{
String
name
=
nameList
.
get
(
i
);
if
(
quoteString
!=
null
&&
name
.
startsWith
(
quoteString
)
&&
name
.
endsWith
(
quoteString
))
{
name
=
name
.
substring
(
1
,
name
.
length
()
-
1
);
String
unquotedName
=
DBUtils
.
getUnQuotedIdentifier
(
dataSource
,
name
);
if
(!
unquotedName
.
equals
(
name
))
{
name
=
unquotedName
;
}
else
{
name
=
DBObjectNameCaseTransformer
.
transformName
(
sc
.
getDataSource
(),
name
);
}
...
...
plugins/org.jkiss.dbeaver.model/src/org/jkiss/dbeaver/model/DBUtils.java
浏览文件 @
5b9a0f7e
...
...
@@ -67,9 +67,7 @@ public final class DBUtils {
if
(
quote
==
null
)
{
quote
=
SQLConstants
.
DEFAULT_IDENTIFIER_QUOTE
;
}
if
(
str
.
startsWith
(
quote
)
&&
str
.
endsWith
(
quote
))
{
return
str
.
substring
(
quote
.
length
(),
str
.
length
()
-
quote
.
length
());
}
str
=
getUnQuotedIdentifier
(
str
,
quote
,
quote
);
}
return
str
;
}
...
...
@@ -77,8 +75,14 @@ public final class DBUtils {
@NotNull
public
static
String
getUnQuotedIdentifier
(
@NotNull
String
str
,
String
quote
)
{
if
(
quote
!=
null
&&
str
.
startsWith
(
quote
)
&&
str
.
endsWith
(
quote
))
{
return
str
.
substring
(
quote
.
length
(),
str
.
length
()
-
quote
.
length
());
return
getUnQuotedIdentifier
(
str
,
quote
,
quote
);
}
@NotNull
public
static
String
getUnQuotedIdentifier
(
@NotNull
String
str
,
String
quote1
,
String
quote2
)
{
if
(
quote1
!=
null
&&
quote2
!=
null
&&
str
.
startsWith
(
quote1
)
&&
str
.
endsWith
(
quote2
))
{
return
str
.
substring
(
quote1
.
length
(),
str
.
length
()
-
quote2
.
length
());
}
return
str
;
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录