File path: /sql12/plugins/dbdiff/src/net/sourceforge/squirrel_sql/plugins/dbdiff/util/DBUtil.java | File path: /sql12/plugins/dbcopy/src/net/sourceforge/squirrel_sql/plugins/dbcopy/util/DBUtil.java | |||
Method name: List
|
Method name: List
|
|||
Number of AST nodes: 15 | Number of AST nodes: 15 | |||
1 | ArrayList<String> pkColumns = new ArrayList<String>();↵ | 1 | ArrayList<String> pkColumns = new ArrayList<String>();↵ | |
2 | DatabaseMetaData md = sourceConn.getConnection().getMetaData();↵ | 2 | DatabaseMetaData md = sourceConn.getConnection().getMetaData();↵ | |
3 | ResultSet rs = null;↵ | 3 | ResultSet rs = null;↵ | |
4 | if (md.supportsCatalogsInTableDefinitions())↵ | 4 | if (md.supportsCatalogsInTableDefinitions())↵ | |
5 | {↵ | 5 | {↵ | |
6 | rs = md.getPrimaryKeys(ti.getCatalogName(), null, ti.getSimpleName());↵ | 6 | rs = md.getPrimaryKeys(ti.getCatalogName(), null, ti.getSimpleName());↵ | |
7 | }↵ | 7 | }↵ | |
8 | else if (md.supportsSchemasInTableDefinitions())↵ | 8 | else if (md.supportsSchemasInTableDefinitions())↵ | |
9 | {↵ | 9 | {↵ | |
10 | rs = md.getPrimaryKeys(null, ti.getSchemaName(), ti.getSimpleName());↵ | 10 | rs = md.getPrimaryKeys(null, ti.getSchemaName(), ti.getSimpleName());↵ | |
11 | }↵ | 11 | }↵ | |
12 | else↵ | 12 | else↵ | |
13 | {↵ | 13 | {↵ | |
14 | rs = md.getPrimaryKeys(null, null, ti.getSimpleName());↵ | 14 | rs = md.getPrimaryKeys(null, null, ti.getSimpleName());↵ | |
15 | }↵ | 15 | }↵ | |
16 | while (rs.next())↵ | 16 | while (rs.next())↵ | |
17 | {↵ | 17 | {↵ | |
18 | String keyColumn = rs.getString(4);↵ | 18 | String keyColumn = rs.getString(4);↵ | |
19 | if (keyColumn != null)↵ | 19 | if (keyColumn != null)↵ | |
20 | {↵ | 20 | {↵ | |
21 | pkColumns.add(keyColumn);↵ | 21 | pkColumns.add(keyColumn);↵ | |
22 | }↵ | 22 | }↵ | |
23 | }↵ | 23 | }↵ | |
24 | if (pkColumns.size() == 0) { ↵ | 24 | if (pkColumns.size() == 0)↵ | |
25 | {↵ | |||
25 | return null; ↵ | 26 | return null;↵ | |
26 | }↵ | 27 | }↵ | |
27 | return pkColumns; | 28 |
| |
See real code fragment | See real code fragment |
Number of common nesting structure subtrees | 1 |
Number of refactorable cases | 1 |
Number of non-refactorable cases | 0 |
Time elapsed for finding largest common nesting structure subtrees (ms) | 1.3 |
Clones location | Clones are in different classes |
Number of node comparisons | 44 |
Number of mapped statements | 15 |
Number of unmapped statements in the first code fragment | 0 |
Number of unmapped statements in the second code fragment | 0 |
Time elapsed for statement mapping (ms) | 6.8 |
Clone type | Type 1 |
ID | Statement | ID | Statement | |
---|---|---|---|---|
1 | ArrayList<String> pkColumns = new ArrayList<String>(); | 1 | ArrayList<String> pkColumns = new ArrayList<String>(); | |
2 | DatabaseMetaData md = sourceConn.getConnection().getMetaData(); | 2 | DatabaseMetaData md = sourceConn.getConnection().getMetaData(); | |
3 | ResultSet rs = null; | 3 | ResultSet rs = null; | |
4 | if (md.supportsCatalogsInTableDefinitions()) | 4 | if (md.supportsCatalogsInTableDefinitions()) | |
5 | rs = md.getPrimaryKeys(ti.getCatalogName(), null, ti.getSimpleName()); | 5 | rs = md.getPrimaryKeys(ti.getCatalogName(), null, ti.getSimpleName()); | |
6 | else if (md.supportsSchemasInTableDefinitions()) | 6 | else if (md.supportsSchemasInTableDefinitions()) | |
7 | rs = md.getPrimaryKeys(null, ti.getSchemaName(), ti.getSimpleName()); | 7 | rs = md.getPrimaryKeys(null, ti.getSchemaName(), ti.getSimpleName()); | |
else | else | |||
8 | rs = md.getPrimaryKeys(null, null, ti.getSimpleName()); | 8 | rs = md.getPrimaryKeys(null, null, ti.getSimpleName()); | |
9 | while (rs.next()) | 9 | while (rs.next()) | |
10 | String keyColumn = rs.getString(4); | 10 | String keyColumn = rs.getString(4); | |
11 | if (keyColumn != null) | 11 | if (keyColumn != null) | |
12 | pkColumns.add(keyColumn); | 12 | pkColumns.add(keyColumn); | |
13 | if (pkColumns.size() == 0) | 13 | if (pkColumns.size() == 0) | |
14 | return null; | 14 | return null; | |
15 | return pkColumns; | 15 | return pkColumns; |
Row | Violation |
---|