I think this is bit more complicated. First, using what Bill indicated, you need to make sure that the oracle data source is using the OracleDataSourceItem, not the SqlDataSourceItem (also check the connection string...I doubt the Oracle connection string looks that simular to the MS SQL server connection string):
// Use SqlDataSourceItem for the SQL data source, with MS SQL Server connection string
DataLayer.DataSources.Add(new SqlDataSourceItem("MySQLConn", "MS SQL server connection string here..."));
// This needs to be the Oracle version of a data source item, with Oracle connection string
DataLayer.DataSources.Add(new OracleDataSourceItem("MyOracleConn", "oracle connection string here..."));
However, you'll also have to handle your Fill/Data retrieval functions differently, as the SQL dialects used between MS SQL server and Oracle differ. If you handle that well, then you just switch data sources and you're good to go (I think..).
I'd look into the QueryInformation object. I believe this is used when you need to handle different types of SQL dialects and is what SF uses to generate SQL based on the type of data source item (i.e. SqlDataSourceItem vs. OracleDataSourceItem).
Hopefully one of the SF guys will chime in here...