Rydeen JavaScript Examples.
【PR】当サイトはプロモーションが含まれています。
Copying the extraction results.
// Get script helper instance.
var rydeen = Packages.ext.rydeen.script.ScriptHelper.getInstance();
// Get connection of source.
var srcConn = rydeen.getConnection('MySQL-1');
print('srcConn='+srcConn);
// Get connection of destination.
var dstConn = rydeen.getConnection('PostgreSQL-1');
print('dstConn='+dstConn);
var srcSqlContext = srcConn.getSqlContext();
var dstSqlContext = dstConn.getSqlContext();
var query = 'SELECT * FROM country';
var rs = rydeen.executeSelect(srcConn, query);
// Create table model.
var dstTableName = 'country';
var srcTableModel = rydeen.createModel(rs, dstTableName);
var dstTableModel = rydeen.convertModel(srcSqlContext, srcTableModel ,dstSqlContext);
if (rydeen.existTable(dstConn, dstTableName)) {
rydeen.dropTable(dstConn, dstTableName);
}
// Create table.
var createTableQuery = rydeen.createCreateTableQuery(dstSqlContext, dstTableModel, false);
print('createTableQuery='+createTableQuery);
rydeen.executeUpdate(dstConn, createTableQuery);
// Copy ResultSet.
var insertedCnt = rydeen.copyResultSet(rs, dstConn, dstTableModel);
dstConn.commit();
print('insertedCnt='+insertedCnt);
srcConn.close(); // omittable
dstConn.close(); // omittable
print('finished.');
Duplicate all tables.
// Get script helper instance.
var rydeen = Packages.ext.rydeen.script.ScriptHelper.getInstance();
/**
* copyTable
*
* @param {SqlConnection} - Source Connection
* @param {SqlConnection} - Destination connection.
* @param {String} - tableName
* @returns {number} - Number of inserted records.
*/
function copyTable(srcConn, dstConn, tableName) {
var srcSqlContext = srcConn.getSqlContext();
var dstSqlContext = dstConn.getSqlContext();
// Create table model.
var srcTableModel = rydeen.createModel(srcConn, tableName);
var dstTableModel = rydeen.convertModel(srcSqlContext, srcTableModel ,dstSqlContext);
if (rydeen.existTable(dstConn, tableName)) {
rydeen.dropTable(dstConn, tableName);
}
// Create table.
var createTableQuery = rydeen.createCreateTableQuery(dstSqlContext, dstTableModel, false);
print('createTableQuery='+createTableQuery);
rydeen.executeUpdate(dstConn, createTableQuery);
// Execute select query.
var selectQuery = 'SELECT * FROM ' + tableName;
print('selectQuery='+selectQuery);
var rs = rydeen.executeSelect(srcConn, selectQuery);
print('dstTableModel.indexMap='+dstTableModel.indexMap.values());
var iterator = dstTableModel.indexMap.values().iterator();
while(iterator.hasNext()) {
var mmdIndex = iterator.next();
var createIndexQuery = rydeen.createCreateIndexQuery(dstSqlContext, dstTableModel, mmdIndex);
print('createIndexQuery='+createIndexQuery);
rydeen.executeUpdate(dstConn, createIndexQuery);
}
// Copy ResultSet.
return rydeen.copyResultSet(rs, dstConn, dstTableModel);
}
// Get connection of source.
var srcConn = rydeen.getConnection('MySQL-1');
print('srcConn='+srcConn);
// Get connection of destination.
var dstConn = rydeen.getConnection('PostgreSQL-1');
print('dstConn='+dstConn);
tableNameList = rydeen.getTableNameList(srcConn, null);
print("tableNameList.size()="+tableNameList.size());
for (i = 0; i < tableNameList.size(); i++) {
tableName = tableNameList.get(i);
insertedCount = copyTable(srcConn, dstConn, tableName);
dstConn.commit();
print('tableName='+tableName+' insertedCount='+insertedCount);
}
srcConn.close(); // omittable
dstConn.close(); // omittable
print('finished.');




