|
|
|
SSC Rookie
      
Group: General Forum Members
Last Login: Monday, January 18, 2010 2:12 AM
Points: 27,
Visits: 10
|
|
|
|
|
|
Forum Newbie
      
Group: General Forum Members
Last Login: Friday, July 18, 2003 12:00 AM
Points: 1,
Visits: 1
|
|
This article assumes that XML is the way of the future, which is a false assumption.
XML has some significant problems. 1. Performance. I'm not talking about file size (and the resulting poor performance over networks), but about that fact that parsing XML is an intensive process. For one thing, you must read the entire data structure into memory because you must read to the closing tag. CSV has no such problems. 2. Interoperability. XML only works with new stuff and something that can parse XML. Sure it crosses platforms, but you'll find that CSV as a format is even more accepted.
Even one of the co-authors of the XML 1.0 standard has pointed out some problems with XML.
See http://slashdot.org/article.pl?sid=03/03/18/0712248&mode=thread&tid=95&tid=156
That is not to say that XML doesn't have its place. Its place is in small applications that don't deal with much data, and/or have complicated data structures that need to be represented with XML.
My impression is that XML is touted as the wave of the future by an increasingly small number of people these days.
|
|
|
|
|
SSCertifiable
       
Group: Moderators
Last Login: Thursday, March 11, 2010 10:33 AM
Points: 6,371,
Visits: 950
|
|
Im not much of an XML fan either, but in many cases the extra overhead is worth what you get out of it. Using the DOM requires you to read the entire file (an awesomely slow process with large files, I watched a demo where the memory usage ticked upward...and upward...forever), but SAX and maybe the .Net reader are designed to be lighter. CSV's are ok, but it's not very rich. My favorite data transfer format is MS Access!
Andy http://www.sqlservercentral.com/columnists/awarren/
Andy SQLShare - Learn One New Thing Each Day SQLAndy - My Professional Blog Connect with me on LinkedIn Follow me on Twitter
|
|
|
|
|
SSC Journeyman
      
Group: General Forum Members
Last Login: Friday, October 17, 2003 12:00 AM
Points: 80,
Visits: 1
|
|
Doesn't anyone translate these articles into proper English before posting them? The grammatical errors in this article drove me nuts.
|
|
|
|
|
SSC-Enthusiastic
      
Group: General Forum Members
Last Login: Wednesday, March 17, 2010 9:18 AM
Points: 142,
Visits: 174
|
|
This article could have been much better if it was edited and proof-read before posting. I gave up trying to decipher the spelling mistakes and errors, but I think the idea for the article was good.
I didn't know SQLXML had this functionality, but I wouldn't trust the code samples given in the article because of the poor English.
Edited by - cppwiz on 07/21/2003 08:53:54 AM
|
|
|
|
|
SSCommitted
      
Group: General Forum Members
Last Login: Monday, March 15, 2010 8:57 AM
Points: 1,637,
Visits: 271
|
|
I got an error trying this. I 3 column table with hr, Source, and Description as the column headings:
hr 0x800401F3
Source ODSOLE Extended Procedure
Description Invalid class string
Thanks, ThomBeaux
ThomasLL, MCDBA
|
|
|
|
|
Keeper of the Duck
Group: Moderators
Last Login: 2 days ago @ 6:59 AM
Points: 6,269,
Visits: 1,360
|
|
quote: Inattention using master..xp_cmdshell can seriously endanger SQL Server security
This article rightfully points out that you tend to avoid xp_cmdshell for security reasons, but then goes and uses the sp_OA* procedures, which you tend to avoid for security and stability reasons. Therefore, I don't think the author can cite security as a reason for using SQLBulkLoad over bcp.
K. Brian Kelley http://www.truthsolutions.com/ Author: Start to Finish Guide to SQL Server Performance Monitoring http://www.netimpress.com/shop/product.asp?ProductID=NI-SQL1
Edited by - bkelley on 07/21/2003 09:34:06 AM
K. Brian Kelley, CISA, MCSE, Security+, MVP - SQL Server Regular Columnist (Security), SQLServerCentral.com Contributing Author of How to Cheat at Securing SQL Server 2005 and Pro SQL Server 2008 Administration | Professional Site | Blog | View Brian Kelley's LinkedIn profile | Twitter
|
|
|
|
|
SSCertifiable
       
Group: Moderators
Last Login: Thursday, March 11, 2010 10:33 AM
Points: 6,371,
Visits: 950
|
|
|
|
|
|
SSC Rookie
      
Group: General Forum Members
Last Login: Monday, August 20, 2007 1:25 AM
Points: 28,
Visits: 1
|
|
I think the BULK INSERT statement is a good substitute to bcp. You avoid teh use of xp_cmdshell and also you avoid the overhead of having each field around tags. I personally think the best data interchange format is a pipe or comma delimited file. The question of portability doesn't arise as even with an XML file you still have to match the various tags. That said, XML does seem interesting and until now I haven't been convinced that it is the right format for transfer of large volume of data
|
|
|
|
|
Keeper of the Duck
Group: Moderators
Last Login: 2 days ago @ 6:59 AM
Points: 6,269,
Visits: 1,360
|
|
quote: I think the BULK INSERT statement is a good substitute to bcp.
From a performance perspective, it should be slightly faster. BULK INSERT runs in the memory context of SQL Server whereas bcp does not. Both of these would be faster than DTS and the described method here.
K. Brian Kelley http://www.truthsolutions.com/ Author: Start to Finish Guide to SQL Server Performance Monitoring http://www.netimpress.com/shop/product.asp?ProductID=NI-SQL1
K. Brian Kelley, CISA, MCSE, Security+, MVP - SQL Server Regular Columnist (Security), SQLServerCentral.com Contributing Author of How to Cheat at Securing SQL Server 2005 and Pro SQL Server 2008 Administration | Professional Site | Blog | View Brian Kelley's LinkedIn profile | Twitter
|
|
|
|