Accessing the content database directly - SharePoint
Is accessing a content database is not a 'best practice/advisable' or it 'should' not be done as Microsoft does not support 开发者_如何学Cit? I just want to know if it 'can' be done in the worst case or it 'should not be done' at all.
For worst case scenario or any normal scenario till the time you are making readonly request to content database its fine. the only risk associated with this is since microsoft does not recommends the same they can change thier internal DB structure any time during hotfix or SP release. Be causious in accessing the data so that you do not cause any lock or dead lock type situations
You should not access a ContentDB directly. The access to any SharePoint DBs can void your support for the farm, and yes, this includes READING from the DB.
See: http://support.microsoft.com/kb/841057/en-us
[...] Examples of such database changes include, but are not limited to, the following: Reading from the database, manually or programmatically Adding database triggers:
Adding database triggers
Adding new indexes or changing existing indexes within tables
Adding, changing, or deleting any primary or foreign key relationships
Changing or deleting existing stored procedures
Calling existing stored procedures directly
Adding new stored procedures
Adding, changing, or deleting any data in any table of any of the databases for the products that are listed in the "Applies to" section
Adding, changing, or deleting any columns in any table of any of the databases for the products that are listed in the "Applies to" section
Making any modification to the database schema
Adding tables to any of the databases for the products that are listed in the "Applies to" section
Changing the database collation
Running DBCC_CHECKDB WITH REPAIR_ALLOW_DATA_LOSS (However, running DBCC_CHECKDB WITH REPAIR_FAST and REPAIR_REBUILD is supported, as these commands only update the indexes of the associated database.)
Well, I wish I could give you a firm answer BUT I can say this; if you are looking for a "worst case senario" then hook your SharePoint list up to an Access db and pull it all down via a link table. That way you can copy into a 'real' table.
That is if that is what you're looking to get to.
If you're looking to just do reporting on it, then TOTALY use link tables in Access and report off of them. It'll be safe and it will be real-time.
精彩评论