Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
suliangchun
dbeaver
提交
2192ec49
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,发现更多精彩内容 >>
提交
2192ec49
编写于
2月 26, 2017
作者:
S
Serge Rider
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
#91 Reorder command merge. Rename command merge.
上级
22ae5c7b
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
47 addition
and
0 deletion
+47
-0
plugins/org.jkiss.dbeaver.ext.mysql/src/org/jkiss/dbeaver/ext/mysql/edit/MySQLTableColumnManager.java
...jkiss/dbeaver/ext/mysql/edit/MySQLTableColumnManager.java
+20
-0
plugins/org.jkiss.dbeaver.model/src/org/jkiss/dbeaver/model/impl/sql/edit/SQLObjectEditor.java
...rg/jkiss/dbeaver/model/impl/sql/edit/SQLObjectEditor.java
+27
-0
未找到文件。
plugins/org.jkiss.dbeaver.ext.mysql/src/org/jkiss/dbeaver/ext/mysql/edit/MySQLTableColumnManager.java
浏览文件 @
2192ec49
...
...
@@ -165,6 +165,26 @@ public class MySQLTableColumnManager extends SQLTableColumnManager<MySQLTableCol
getNestedDeclaration
(
column
.
getTable
(),
command
)));
}
@Override
protected
void
addObjectReorderActions
(
List
<
DBEPersistAction
>
actions
,
ObjectReorderCommand
command
)
{
final
MySQLTableColumn
column
=
command
.
getObject
();
String
order
=
"FIRST"
;
if
(
column
.
getOrdinalPosition
()
>
0
)
{
for
(
MySQLTableColumn
col
:
command
.
getObject
().
getTable
().
getCachedAttributes
())
{
if
(
col
.
getOrdinalPosition
()
==
column
.
getOrdinalPosition
()
-
1
)
{
order
=
"AFTER "
+
DBUtils
.
getQuotedIdentifier
(
col
);
break
;
}
}
}
actions
.
add
(
new
SQLDatabasePersistAction
(
"Reorder column"
,
"ALTER TABLE "
+
column
.
getTable
().
getFullyQualifiedName
(
DBPEvaluationContext
.
DDL
)
+
" CHANGE "
+
DBUtils
.
getQuotedIdentifier
(
command
.
getObject
())
+
" "
+
getNestedDeclaration
(
column
.
getTable
(),
command
)
+
" "
+
order
));
}
///////////////////////////////////////////////
// Reorder
...
...
plugins/org.jkiss.dbeaver.model/src/org/jkiss/dbeaver/model/impl/sql/edit/SQLObjectEditor.java
浏览文件 @
2192ec49
...
...
@@ -379,6 +379,20 @@ public abstract class SQLObjectEditor<OBJECT_TYPE extends DBSObject, CONTAINER_T
addObjectRenameActions
(
actions
,
this
);
return
actions
.
toArray
(
new
DBEPersistAction
[
actions
.
size
()]);
}
@Override
public
DBECommand
<?>
merge
(
DBECommand
<?>
prevCommand
,
Map
<
Object
,
Object
>
userParams
)
{
// We need very first and very last rename commands. They produce final rename
ObjectRenameCommand
renameCmd
=
(
ObjectRenameCommand
)
userParams
.
get
(
"rename"
);
if
(
renameCmd
==
null
)
{
renameCmd
=
new
ObjectRenameCommand
(
getObject
(),
getTitle
(),
newName
);
userParams
.
put
(
"rename"
,
renameCmd
);
}
else
{
renameCmd
.
newName
=
newName
;
return
renameCmd
;
}
return
super
.
merge
(
prevCommand
,
userParams
);
}
}
public
class
RenameObjectReflector
implements
DBECommandReflector
<
OBJECT_TYPE
,
ObjectRenameCommand
>
{
...
...
@@ -436,6 +450,19 @@ public abstract class SQLObjectEditor<OBJECT_TYPE extends DBSObject, CONTAINER_T
return
actions
.
toArray
(
new
DBEPersistAction
[
actions
.
size
()]);
}
@Override
public
DBECommand
<?>
merge
(
DBECommand
<?>
prevCommand
,
Map
<
Object
,
Object
>
userParams
)
{
// We need very first and very last reorder commands. They produce final rename
ObjectReorderCommand
reorderCmd
=
(
ObjectReorderCommand
)
userParams
.
get
(
"reorder"
);
if
(
reorderCmd
==
null
)
{
reorderCmd
=
new
ObjectReorderCommand
(
getObject
(),
siblings
,
getTitle
(),
newPosition
);
userParams
.
put
(
"reorder"
,
reorderCmd
);
}
else
{
reorderCmd
.
newPosition
=
newPosition
;
return
reorderCmd
;
}
return
super
.
merge
(
prevCommand
,
userParams
);
}
}
public
class
ReorderObjectReflector
implements
DBECommandReflector
<
OBJECT_TYPE
,
ObjectReorderCommand
>
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录