本文整理了Java中org.pentaho.di.core.database.Database.connect()
方法的一些代码示例,展示了Database.connect()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Database.connect()
方法的具体详情如下:
包路径:org.pentaho.di.core.database.Database
类名称:Database
方法名:connect
[英]Open the database connection.
[中]
代码示例来源:origin: pentaho/pentaho-kettle
/**
* Open the database connection.
*
* @param partitionId the partition ID in the cluster to connect to.
* @throws KettleDatabaseException if something went wrong.
*/
public void connect( String partitionId ) throws KettleDatabaseException {
connect( null, partitionId );
}
代码示例来源:origin: pentaho/pentaho-kettle
/**
* Open the database connection.
*
* @throws KettleDatabaseException if something went wrong.
*/
public void connect() throws KettleDatabaseException {
connect( null );
}
代码示例来源:origin: pentaho/pentaho-kettle
@Override public boolean test() {
try {
getDatabase().connect();
} catch ( KettleDatabaseException kde ) {
return false;
}
return true;
}
代码示例来源:origin: pentaho/pentaho-kettle
public void run( IProgressMonitor monitor ) throws InvocationTargetException, InterruptedException {
db = new Database( Spoon.loggingObject, dbMeta );
try {
db.connect();
result = db.getQueryFields( sql, false );
if ( monitor.isCanceled() ) {
throw new InvocationTargetException( new Exception( "This operation was cancelled!" ) );
}
} catch ( Exception e ) {
throw new InvocationTargetException( e, "Problem encountered determining query fields: " + e.toString() );
} finally {
db.disconnect();
}
}
};
代码示例来源:origin: pentaho/pentaho-kettle
protected RowMetaInterface getDatabaseTableFields( Database db, String schemaName, String tableName )
throws KettleDatabaseException {
// First try without connecting to the database... (can be S L O W)
RowMetaInterface extraFields = db.getTableFieldsMeta( schemaName, tableName );
if ( extraFields == null ) { // now we need to connect
db.connect();
extraFields = db.getTableFieldsMeta( schemaName, tableName );
}
return extraFields;
}
代码示例来源:origin: pentaho/pentaho-kettle
protected RowMetaInterface getDatabaseTableFields( Database db, String schemaName, String tableName )
throws KettleDatabaseException {
// First try without connecting to the database... (can be S L O W)
String schemaTable = databaseMeta.getQuotedSchemaTableCombination( schemaName, tableName );
RowMetaInterface extraFields = db.getTableFields( schemaTable );
if ( extraFields == null ) { // now we need to connect
db.connect();
extraFields = db.getTableFields( schemaTable );
}
return extraFields;
}
代码示例来源:origin: pentaho/pentaho-kettle
private RowMetaInterface getTableFields( LoggingObjectInterface parentLoggingObject ) throws KettleDatabaseException {
Database database = new Database( parentLoggingObject, databaseMeta );
try {
database.connect();
return database.getTableFields( schemaTable );
} finally {
database.disconnect();
}
}
代码示例来源:origin: pentaho/pentaho-kettle
void connect() throws KettleException {
if ( getTransMeta().isUsingUniqueConnections() ) {
synchronized ( getTrans() ) {
data.db.connect( getTrans().getTransactionId(), getPartitionID() );
}
} else {
data.db.connect( getPartitionID() );
}
}
代码示例来源:origin: pentaho/pentaho-kettle
public void run( IProgressMonitor monitor ) throws InvocationTargetException, InterruptedException {
db = new Database( Spoon.loggingObject, dbMeta );
try {
db.connect();
String sql = dbMeta.getDatabaseInterface().getSelectCountStatement( tableName );
RowMetaAndData row = db.getOneRow( sql );
size = row.getRowMeta().getInteger( row.getData(), 0 );
if ( monitor.isCanceled() ) {
throw new InvocationTargetException( new Exception( "This operation was cancelled!" ) );
}
} catch ( KettleException e ) {
throw new InvocationTargetException( e, "Couldn't get a result because of an error :" + e.toString() );
} finally {
db.disconnect();
}
}
};
代码示例来源:origin: pentaho/pentaho-kettle
protected void checkConnection() throws KettleDatabaseException {
// check connection
// connect and disconnect
Database dbchecked = null;
try {
dbchecked = new Database( this, connection );
dbchecked.shareVariablesWith( this );
dbchecked.connect( parentJob.getTransactionId(), null );
} finally {
if ( dbchecked != null ) {
dbchecked.disconnect();
}
}
}
代码示例来源:origin: pentaho/pentaho-kettle
@Test
public void jobFail_columnNotExist() throws KettleException {
doReturn( db ).when( jobEntry ).getNewDatabaseFromMeta();
doNothing().when( db ).connect( anyString(), anyString() );
doReturn( true ).when( db ).checkTableExists( anyString(), anyString() );
doReturn( false ).when( db ).checkColumnExists( anyString(), anyString(), anyString() );
final Result result = jobEntry.execute( new Result(), 0 );
assertEquals( "Should be some errors", 1, result.getNrErrors() );
assertFalse( "Result should be false", result.getResult() );
verify( db, atLeastOnce() ).disconnect();
}
代码示例来源:origin: pentaho/pentaho-kettle
/**
* @return the database.
* @throws KettleException
* if an error occurs.
*/
public Database connectToDatabase() throws KettleException {
if ( this.getDbMeta() != null ) {
Database db = new Database( loggingObject, this.getDbMeta() );
db.connect();
return db;
}
throw new KettleException( MESSAGES.getString( "TeraFastMeta.Exception.ConnectionNotDefined" ) );
}
代码示例来源:origin: pentaho/pentaho-kettle
@Test
public void jobSuccess() throws KettleException {
doReturn( db ).when( jobEntry ).getNewDatabaseFromMeta();
doNothing().when( db ).connect( anyString(), anyString() );
doReturn( true ).when( db ).checkColumnExists( anyString(), anyString(), anyString() );
doReturn( true ).when( db ).checkTableExists( anyString(), anyString() );
final Result result = jobEntry.execute( new Result(), 0 );
assertEquals( "Should be no error", 0, result.getNrErrors() );
assertTrue( "Result should be true", result.getResult() );
assertEquals( "Lines written", COLUMNS.length, result.getNrLinesWritten() );
verify( db, atLeastOnce() ).disconnect();
}
}
代码示例来源:origin: pentaho/pentaho-kettle
@Test
public void jobFail_tableNotExist() throws KettleException {
when( jobEntry.getNewDatabaseFromMeta() ).thenReturn( db );
doNothing().when( db ).connect( anyString(), any() );
doReturn( false ).when( db ).checkTableExists( anyString(), anyString() );
final Result result = jobEntry.execute( new Result(), 0 );
assertEquals( "Should be error", 1, result.getNrErrors() );
assertFalse( "Result should be false", result.getResult() );
verify( db, atLeastOnce() ).disconnect();
}
代码示例来源:origin: pentaho/pentaho-kettle
public void run( IProgressMonitor monitor ) throws InvocationTargetException, InterruptedException {
db = new Database( Spoon.loggingObject, dbMeta );
try {
db.connect();
if ( limit > 0 ) {
db.setQueryLimit( limit );
}
rows = db.getFirstRows( tableName, limit, new ProgressMonitorAdapter( monitor ) );
rowMeta = db.getReturnRowMeta();
} catch ( KettleException e ) {
throw new InvocationTargetException( e, "Couldn't find any rows because of an error :" + e.toString() );
} finally {
db.disconnect();
}
}
};
代码示例来源:origin: pentaho/pentaho-kettle
private void connectDatabase( Database database ) throws KettleDatabaseException {
database.shareVariablesWith( this );
if ( getTransMeta().isUsingUniqueConnections() ) {
synchronized ( getTrans() ) {
database.connect( getTrans().getTransactionId(), getPartitionID() );
}
} else {
database.connect( getPartitionID() );
}
database.setCommit( 100 ); // we never get a commit, but it just turns off auto-commit.
if ( log.isDetailed() ) {
logDetailed( BaseMessages.getString( PKG, "DatabaseLookup.Log.ConnectedToDatabase" ) );
}
}
}
代码示例来源:origin: pentaho/pentaho-kettle
@Override
public RowMetaInterface getTableFields() {
RowMetaInterface fields = null;
if ( databaseMeta != null ) {
Database db = createDatabaseObject();
try {
db.connect();
fields = db.getTableFieldsMeta( schemaName, tableName );
} catch ( KettleDatabaseException dbe ) {
logError( BaseMessages.getString( PKG, "DimensionLookupMeta.Log.DatabaseErrorOccurred" ) + dbe.getMessage() );
} finally {
db.disconnect();
}
}
return fields;
}
代码示例来源:origin: pentaho/pentaho-kettle
public boolean getInputData() {
// Get some data...
RipDatabaseWizardPage1 page1 = (RipDatabaseWizardPage1) getPreviousPage();
Database sourceDb = new Database( RipDatabaseWizard.loggingObject, page1.getSourceDatabase() );
try {
sourceDb.connect();
input = sourceDb.getTablenames( false ); // Don't include the schema since it can cause invalid syntax
} catch ( KettleDatabaseException dbe ) {
new ErrorDialog( shell, "Error getting tables", "Error obtaining table list from database!", dbe );
input = null;
return false;
} finally {
sourceDb.disconnect();
}
return true;
}
代码示例来源:origin: pentaho/pentaho-kettle
public boolean getInputData() {
// Get some data...
CopyTableWizardPage1 page1 = (CopyTableWizardPage1) getPreviousPage();
Database sourceDb = new Database( CopyTableWizard.loggingObject, page1.getSourceDatabase() );
try {
sourceDb.connect();
input = sourceDb.getTablenames();
} catch ( KettleDatabaseException dbe ) {
new ErrorDialog(
shell, BaseMessages.getString( PKG, "CopyTableWizardPage2.ErrorGettingTables.DialogTitle" ),
BaseMessages.getString( PKG, "CopyTableWizardPage2.ErrorGettingTables.DialogMessage" ), dbe );
input = null;
return false;
} finally {
sourceDb.disconnect();
}
return true;
}
代码示例来源:origin: pentaho/pentaho-kettle
/**
* Execute fastload.
*
* @throws KettleException
* ...
*/
public void execute() throws KettleException {
if ( this.meta.getTruncateTable().getValue() ) {
Database db = new Database( this, this.meta.getDbMeta() );
db.connect();
db.truncateTable( this.meta.getTargetTable().getValue() );
db.commit();
db.disconnect();
}
startFastLoad();
if ( this.meta.getUseControlFile().getValue() ) {
this.invokeLoadingControlFile();
} else {
this.invokeLoadingCommand();
}
}
内容来源于网络,如有侵权,请联系作者删除!