<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://www.dotnetzone.gr:443/cs/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>SQL Server (και άλλες databases)</title><link>https://www.dotnetzone.gr:443/cs/forums/28/ShowForum.aspx</link><description>Θέματα που αφορούν τον SQL Server (7.0, 2000, 2005) αλλά και Oracle, Access, DB2, MySQL, κλπ.</description><dc:language>el</dc:language><generator>CommunityServer 2.1 SP3 (Build: 20423.1)</generator><item><title>Απ: Αποθήκευση XML</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/67713.aspx</link><pubDate>Mon, 10 Oct 2011 22:59:42 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:67713</guid><dc:creator>dimos.homatas</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/67713.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=67713</wfw:commentRss><description>Ευχαριστώ για τον χρόνο Παναγιώτη. Κάποια στιγμή αργότερα θα ανεβάσω και το xml.</description></item><item><title>Απ: Αποθήκευση XML</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/67711.aspx</link><pubDate>Mon, 10 Oct 2011 20:19:03 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:67711</guid><dc:creator>Παναγιώτης Καναβός</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/67711.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=67711</wfw:commentRss><description>&lt;pre&gt;&lt;span class="Apple-style-span" style="font-family:Tahoma, Verdana, Arial, Helvetica, sans-serif;white-space:normal;"&gt;Δοκίμασα ξανά με αυτόν τον πίνακα και stored procedure:&lt;/span&gt;&lt;/pre&gt;&lt;div&gt;&lt;pre&gt;&lt;span style="color:Black;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;create&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;table&lt;/span&gt; TestTable
(
	Id &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;int&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;PRIMARY&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;KEY&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;IDENTITY&lt;/span&gt;,
	XmlField &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;varchar&lt;/span&gt;(&lt;span style="color:Fuchsia;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;max&lt;/span&gt;)
)&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style="color:Black;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ALTER&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;PROCEDURE&lt;/span&gt; [dbo].[sp_InsertTest] 	
	@XML &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;varchar&lt;/span&gt;(&lt;span style="color:Fuchsia;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;max&lt;/span&gt;)
&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;AS&lt;/span&gt;
&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;BEGIN&lt;/span&gt;
&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;INSERT&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;INTO&lt;/span&gt; TestTable
(
	XmlField
)
&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;VALUES&lt;/span&gt;
(
	@XML
);
&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;SELECT&lt;/span&gt; &lt;span style="color:Fuchsia;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;SCOPE_IDENTITY&lt;/span&gt;();

&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;END&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div&gt;Και αυτόν τον κώδικα:&lt;/div&gt;&lt;div&gt;&lt;pre&gt;&lt;span style="color:black;background-color:transparent;font-family:'Courier New';font-size:11px;"&gt;&lt;span style="color:blue;background-color:transparent;font-family:'Courier New';font-size:11px;"&gt;decimal&lt;/span&gt; newID ;
&lt;span style="color:blue;background-color:transparent;font-family:'Courier New';font-size:11px;"&gt;using&lt;/span&gt; (var connection &lt;span style="color:red;background-color:transparent;font-family:'Courier New';font-size:11px;"&gt;=&lt;/span&gt; &lt;span style="color:blue;background-color:transparent;font-family:'Courier New';font-size:11px;"&gt;new&lt;/span&gt; SqlConnection(Settings.Default.TestConnection))
{
        var cmd &lt;span style="color:red;background-color:transparent;font-family:'Courier New';font-size:11px;"&gt;=&lt;/span&gt; &lt;span style="color:blue;background-color:transparent;font-family:'Courier New';font-size:11px;"&gt;new&lt;/span&gt; SqlCommand(&lt;span style="font-family:'Courier New';font-size:11px;"&gt;"sp_InsertTest"&lt;/span&gt;, connection);
        cmd.CommandType &lt;span style="color:red;background-color:transparent;font-family:'Courier New';font-size:11px;"&gt;=&lt;/span&gt; CommandType.StoredProcedure;
        &lt;span style="color:green;background-color:transparent;font-family:'Courier New';font-size:11px;"&gt;//var paramXml = cmd.Parameters.Add(new SqlParameter("@XML", contents));&lt;/span&gt;
        cmd.Parameters.AddWithValue(&lt;span style="font-family:'Courier New';font-size:11px;"&gt;"@XML"&lt;/span&gt;, contents);

        connection.Open();
        newID= (&lt;span style="color:blue;background-color:transparent;font-family:'Courier New';font-size:11px;"&gt;decimal&lt;/span&gt;) cmd.ExecuteScalar();                
}&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div&gt;Οι δύο γραμμές για τη δημιουργία της παραμέτρου κάνουν ακριβώς το ίδιο, καθώς η AddWithValue κυριολεκτικά είναι μόνο ένα&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;pre&gt;&lt;span style="color:Black;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;return&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;this&lt;/span&gt;.Add(&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;new&lt;/span&gt; SqlParameter(parameterName, value));&lt;/span&gt;&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Και πάλι δεν υπήρξε truncation. Πρόβλημα εμφανίστηκε μόνο όταν αντί για varchar(max) έβαλα στο stored procedure σκέτο varchar (το οποίο είναι αντίστοιχο του varchar(1)) ή varchar με συγκεκριμένο μέγεθος.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Καλό είναι να απομονώνεις τον ύποπτο κώδικα σε ένα ξεχωριστό test project &amp;nbsp;όταν αντιμετωπίζεις "περίεργες" συμπεριφορές. Το πρόβλημα μπορεί να οφείλεται σε κάτι εντελώς διαφορετικό από αυτό που νομίζεις αρχικά αλλά δεν φαίνεται μέσα στην εφαρμογή γιατί το ένα κομμάτι κώδικα επηρεάζει το επόμενο. Απομονώνοντας τα διάφορα τμήματα μπορείς να αποκλείσεις εύκολα τα πράγματα που δεν φταίνε για να βρεις τον πραγματικό ένοχο.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Το debugging δεν είναι και τόσο διαφορετικό από το CSI και πολλές από τις τεχνικές του ενός χρησιμοποιούνται και στο άλλο. Από το "απομόνωσε τα στοιχεία" μέχρι το "μην εμπιστεύεσαι τους μάρτυρες"&lt;/div&gt;</description></item><item><title>Απ: Αποθήκευση XML</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/67710.aspx</link><pubDate>Mon, 10 Oct 2011 19:28:25 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:67710</guid><dc:creator>Παναγιώτης Καναβός</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/67710.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=67710</wfw:commentRss><description>Αν δεν σταματήσεις τα απανωτά post δεν θα προλάβω ποτέ να κάνω approve τον κώδικα. Έλεος! Αφού σου λέει ότι θέλει approval, πρέπει να αφήσεις κάποιον να κάνει το approval!&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Ο Community Server μαρκάρει για approval οποιοδήποτε post φαίνεται να περιέχει περίεργα πράγματα.&lt;/div&gt;</description></item><item><title>Απ: Αποθήκευση XML</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/67709.aspx</link><pubDate>Mon, 10 Oct 2011 19:20:57 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:67709</guid><dc:creator>dimos.homatas</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/67709.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=67709</wfw:commentRss><description>Για κάποιον λόγο το φόρουμ μου λέει ότι το ποστ θέλει έγκριση - αν και αυτά τα ποστάρει.&amp;nbsp;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Παναγιώτη, είναι όντως πολύ straightforward, και δεν νομίζω να έχω καμιά "κουλαμάρα" μέσα. Έχω και το επίμαχο xml αν θες, αλλά πρέπει να το ανεβάσω κάπου. Από ότι βλέπω δεν έχουμε attachments.&lt;/div&gt;</description></item><item><title>Απ: Αποθήκευση XML</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/67707.aspx</link><pubDate>Mon, 10 Oct 2011 19:15:56 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:67707</guid><dc:creator>dimos.homatas</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/67707.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=67707</wfw:commentRss><description>Πόσταρα κώδικα, αλλά θέλει administrator approval? Καινούριο κόλπο;</description></item><item><title>Απ: Αποθήκευση XML</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/67706.aspx</link><pubDate>Mon, 10 Oct 2011 19:13:08 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:67706</guid><dc:creator>dimos.homatas</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/67706.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=67706</wfw:commentRss><description>Ορίστε το Insert sp&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;pre&gt;&lt;span style="color:Black;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;USE&lt;/span&gt; [mwIBS]
GO
&lt;span style="color:Teal;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;/****** Object:  StoredProcedure [dbo].[sp_InsertTrace]    Script Date: 10/10/2011 11:37:58 ******/&lt;/span&gt;
&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;SET&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ANSI_NULLS&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ON&lt;/span&gt;
GO
&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;SET&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;QUOTED_IDENTIFIER&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ON&lt;/span&gt;
GO
&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;ALTER&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;PROCEDURE&lt;/span&gt; [dbo].[sp_InsertTrace] 
	@Service &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;varchar&lt;/span&gt;(100),
	@Method &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;varchar&lt;/span&gt;(100),
	@RequestXML xml,
	@ResponseXML xml,
	@RequestObject &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;varchar&lt;/span&gt;(50),
	@ResponseObject &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;varchar&lt;/span&gt;(50)
&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;AS&lt;/span&gt;
&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;BEGIN&lt;/span&gt;
&lt;span style="color:Teal;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;-- InsertTrace&lt;/span&gt;
&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;INSERT&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;INTO&lt;/span&gt; Traces
(
	Service,
	Method,
	RequestXML,
	ResponseXML,
	RequestObject, 
	ResponseObject
)
&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;VALUES&lt;/span&gt;
(
	@Service,
	@Method,
	@RequestXML,
	@ResponseXML,
	@RequestObject,
	@ResponseObject
);
&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;SELECT&lt;/span&gt; &lt;span style="color:Fuchsia;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;SCOPE_IDENTITY&lt;/span&gt;();

&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;END&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;Τα πεδία RequestXML και ResponseXML είναι το σημείο τριβής, ειδικότερα το ResponseXML. Σε αυτό δοκίμασα και το varchar(MAX), nvarchar(MAX), text, ntext. Εδώ είναι πλέον xml.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Ορίστε και η κλήση του κώδικα:&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;pre&gt;&lt;span style="color:Black;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;    &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;public&lt;/span&gt; Trace InsertTrace(Trace trace)
    {
      &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;using&lt;/span&gt; (SqlConnection Conn &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;new&lt;/span&gt; SqlConnection(Properties.Settings.Default.connectionString))
      {
        Conn.Open();
        &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;using&lt;/span&gt; (SqlTransaction trans &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; Conn.BeginTransaction())
        &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;using&lt;/span&gt; (SqlCommand cmd &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;new&lt;/span&gt; SqlCommand(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"sp_InsertTrace"&lt;/span&gt;, Conn, trans))
        {
          cmd.CommandType &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; CommandType.StoredProcedure;
          cmd.Parameters.Add(&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;new&lt;/span&gt; SqlParameter(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"@Service"&lt;/span&gt;, trace.Service));
          cmd.Parameters.Add(&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;new&lt;/span&gt; SqlParameter(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"@Method"&lt;/span&gt;, trace.Method));
          cmd.Parameters.Add(&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;new&lt;/span&gt; SqlParameter(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"@RequestXML"&lt;/span&gt;, trace.RequestSqlXml));
          cmd.Parameters.Add(&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;new&lt;/span&gt; SqlParameter(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"@ResponseXML"&lt;/span&gt;, trace.ResponseSqlXML));
          cmd.Parameters.Add(&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;new&lt;/span&gt; SqlParameter(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"@RequestObject"&lt;/span&gt;, trace.RequestObjectName));
          cmd.Parameters.Add(&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;new&lt;/span&gt; SqlParameter(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"@ResponseObject"&lt;/span&gt;, trace.ResponseObjectName));
          trace.TraceId &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; Convert.ToInt32(cmd.ExecuteScalar());

          &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;foreach&lt;/span&gt; (TraceCriterion traceCriterion &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;in&lt;/span&gt; trace.TraceCriteria)
          {
            traceCriterion.TraceId &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; trace.TraceId;
            InsertCriterion(traceCriterion, Conn, trans);
          }

          trans.Commit();
          Conn.Close();
          &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;return&lt;/span&gt; trace;
        }
      }
    }

    &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;private&lt;/span&gt; TraceCriterion InsertCriterion(TraceCriterion traceCriterion, SqlConnection conn, SqlTransaction trans)
    {
      &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;using&lt;/span&gt; (SqlCommand cmd &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;new&lt;/span&gt; SqlCommand(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"sp_InsertTraceCriterion"&lt;/span&gt;, conn, trans))
      {
        cmd.CommandType &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; CommandType.StoredProcedure;
        cmd.Transaction &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; trans;
        cmd.Parameters.Add(&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;new&lt;/span&gt; SqlParameter(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"@TraceId"&lt;/span&gt;, traceCriterion.TraceId));
        cmd.Parameters.Add(&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;new&lt;/span&gt; SqlParameter(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"@Criterion"&lt;/span&gt;, traceCriterion.Criterion));
        cmd.Parameters.Add(&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;new&lt;/span&gt; SqlParameter(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"@CannedValue"&lt;/span&gt;, traceCriterion.CannedValue));
        traceCriterion.TraceCriterionId &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; Convert.ToInt32(cmd.ExecuteScalar());
        &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;return&lt;/span&gt; traceCriterion;
      }
    }&lt;/span&gt;&lt;/pre&gt;Στις παραμέτρους που περνάει το αντικείμενο, τα members RequestSqlXml &amp;amp; ResponseSqlXml είναι πλέον τύπου SqlXml. Πιο πριν, στις δοκιμές με τα varchar κλπ ήταν απλώς string - το οποίο επαναλαμβάνω, ήταν ολόκληρο, και ελέγχοντας ακόμα και το parameters collection, δεν έλειπε τίποτα.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Μπορώ να ανεβάσω και το επίμαχο xml, είναι καμιά 40αριά kb συμπιεσμένο.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Παρέλειψα το δευτερεύον sp του InsertCriterion... δεν έχει σημασία.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;</description></item><item><title>Απ: Αποθήκευση XML</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/67705.aspx</link><pubDate>Mon, 10 Oct 2011 18:59:23 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:67705</guid><dc:creator>Παναγιώτης Καναβός</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/67705.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=67705</wfw:commentRss><description>Για να μην έχεις καμμία αμφιβολία, δημιούργησα ένα πίνακα με αυτό το script:&lt;div&gt;&lt;pre&gt;&lt;span style="color:Black;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;create&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;table&lt;/span&gt; TestTable
(
	Id &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;int&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;PRIMARY&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;KEY&lt;/span&gt;,
	XmlField &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;nvarchar&lt;/span&gt;(&lt;span style="color:Fuchsia;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;max&lt;/span&gt;)
)&lt;/span&gt;&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Και έβαλα μέσα ένα XML των 300KB με τον παρακάτω κώδικα&lt;/div&gt;&lt;div&gt;&lt;pre&gt;&lt;span style="color:Black;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;static&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;void&lt;/span&gt; Main(&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;string&lt;/span&gt;[] args)
        {
            var contents=File.ReadAllText(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"Castle.Core.xml"&lt;/span&gt;);

            &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;using&lt;/span&gt; (var connection &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;new&lt;/span&gt; SqlConnection(Settings.Default.TestConnection))
            {
                var cmd &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;new&lt;/span&gt; SqlCommand(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"insert into TestTable (ID,XmlField) VALUES(@id,@xmlField)"&lt;/span&gt;,connection);
                var paramXml=cmd.Parameters.Add(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"@xmlField"&lt;/span&gt;, SqlDbType.NText);
                var paramId &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; cmd.Parameters.Add(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"@id"&lt;/span&gt;, SqlDbType.Int);
                paramId.Value &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; 1;
                paramXml.Value &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; contents;

                connection.Open();
                cmd.ExecuteNonQuery();
            }

            &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;using&lt;/span&gt; (var connection &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;new&lt;/span&gt; SqlConnection(Settings.Default.TestConnection))
            {
                var cmd &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;new&lt;/span&gt; SqlCommand(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"select XmlField from TestTable where ID=1"&lt;/span&gt;, connection);
                
                connection.Open();
                var result=(&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;string&lt;/span&gt;)cmd.ExecuteScalar();
                Debug.Assert(result.Length==contents.Length);

            }
        
        }&lt;/span&gt;&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Δεν αντιμετώπισα κανένα πρόβλημα. Άλλαξα τον τύπο του πεδίου σε varchar και τον τύπο της παραμέτρου σε SqlDbType.Text, επίσης κανένα πρόβλημα. Άλλαξα τον τύπο της παραμέτρους σε SqlDbType.Varchar ΠΑΛΙ κανένα πρόβλημα. Άλλαξα τον κώδικα που δημιουργεί την παράμετρο σε&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;pre&gt;&lt;span style="color:Black;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;cmd.Parameters.AddWithValue(&lt;span style="color:#666666;background-color:#e4e4e4;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;"@xmlField"&lt;/span&gt;, contents);&lt;/span&gt;&lt;/pre&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Παρότι δεν περνάω τύπο και μέγεθος, πάλι δεν είχα πρόβλημα.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Νομίζω ότι πρέπει να ρίξεις μία ματιά πως φορτώνεις τα XML δεδομένα και τί SQL statement εκτελείς γιατί απλά δεν μπορώ να αναπαράγω το πρόβλημα που αναφέρεις. Ακόμη και η αρχική μου υπόθεση ότι έφταιγε ο τύπος της παραμέτρου αποδείχθηκε λάθος. Ο SQL server και το ADO.NET χειρίζονται άνετα τα XML δεδομένα, όσο μεγάλα και να είναι, φτάνει το πεδίο που χρησιμοποιείς να μπορεί να τα χωρέσει.&lt;/div&gt;</description></item><item><title>Απ: Αποθήκευση XML</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/67704.aspx</link><pubDate>Mon, 10 Oct 2011 18:34:40 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:67704</guid><dc:creator>dimos.homatas</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/67704.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=67704</wfw:commentRss><description>Δεν έχω τον λάθος κώδικα πλέον, θα ποστάρω το ένα sp και το xml καθώς και τα σωστά με υποσημειώσεις.</description></item><item><title>Απ: Αποθήκευση XML</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/67702.aspx</link><pubDate>Mon, 10 Oct 2011 05:19:38 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:67702</guid><dc:creator>Παναγιώτης Καναβός</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/67702.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=67702</wfw:commentRss><description>Ποιό stored procedure? Τί κάνει αυτό? Πού είναι? Δεν το έχεις κάνει post. Γιατί θεωρείς ότι το πρόβλημα είναι στον SQL Server και όχι στο stored procedure? Πέρα από το ότι οι πιθανότητες είναι 100000000000000:1 ότι φταίει ο κώδικας, αν υπήρχε κάποιο θέμα να είσαι σίγουρος ότι θα είχε γίνει βούκινο.&amp;nbsp;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Δυσανεξία από τον server δεν υπάρχει, ούτε έχει διαπιστωθεί τα τελευταία 15 χρόνια. Προβλήματα στον κώδικα, άπειρα. Δείξε μας τον κώδικα σου να βρούμε τί συμβαίνει&lt;/div&gt;</description></item><item><title>Απ: Αποθήκευση XML</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/67700.aspx</link><pubDate>Mon, 10 Oct 2011 04:42:27 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:67700</guid><dc:creator>dimos.homatas</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/67700.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=67700</wfw:commentRss><description>Δοκίμασα και τα text, ntext. Πήγε και εκεί το μυαλό μου, αν και μου βρωμούσε &amp;nbsp;η δουλειά ήδη από την αποτυχία του (n)varchar(MAX).&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Συμπληρωματικά να αναφέρω ότι έτρεξα το εν λόγω stored procedure και από το management studio, έκανα paste ΟΛΑ τα δεδομένα... σε εκείνη την περίπτωση από τα 500 κάτι kb, αντί για να τα 42 περίπου που έγραφε από το πρόγραμμα, έγραψε 30 και κάτι.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Πληροφοριακά, κανένας "περίεργος" χαρακτήρας μέσα, καθαρά αγγλικά.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Δεν δοκίμασα πάντως τους binary τύπους δεδομένων... μπορεί να δουλεύει κάτι τέτοιο, αλλά μου φάνηκε πολύ "άγριο".&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Αφού λύθηκε το θέμα με το xml data type + sqlxml, πάλι καλά, τουλάχιστον έγινε η δουλειά. Απλά δεν μου αρέσει που υπάρχει αυτού του είδους η "δυσανεξία" από τους τύπους-κουβάδες προς τα xml δεδομένα.&lt;/div&gt;</description></item><item><title>Απ: Αποθήκευση XML</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/67681.aspx</link><pubDate>Sat, 08 Oct 2011 22:37:16 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:67681</guid><dc:creator>Παναγιώτης Καναβός</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/67681.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=67681</wfw:commentRss><description>Άλλο πράγματ τα varchar, nvarchar με συγκεκριμένο μέγεθος και άλλο τα varchar(max), nvarchar(max). Ο πρώτος τύπος έχει όριο τα 8000 bytes (8000 varchar ή 4000 nvarchar). Τα αντίστοιχα max δεν έχουν μέγεθος και χωράνε οποιοδήποτε μέγεθος μέχρι 2^32-1. Πρόκειται για τους τύπους που παλαιότερα ονομάζονταν text και ntext αντίστοιχα.&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Επιπλέον, άλλο πως είναι αποθηκευμένα στο server και άλλο τί παραμέτρους δίνεις εσύ στην SQL που εκτελείς. Όπως αναφέρεται και &lt;a href="http://msdn.microsoft.com/en-us/library/system.data.sqldbtype.aspx"&gt;στο documentation για τους διάφορους τύπους&lt;/a&gt;, οι σωστοί τύποι είναι οι SqlDbType.Text και SqlDbType.NText, όχι οι SqlDbType.Varchar και NVarchar. Αν περάσεις ένα πολύ μεγάλο string σε παράμετρο varchar, λογικό είναι να κοπεί, γιατί πολύ απλά ξεπερνάει το μέγεθος του τύπου που έδωσες.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Πέρα από το θέμα των τύπων πάντως, διαπιστώνω ένα άλλο ΠΟΛΥ ΜΕΓΑΛΟ πρόβλημα. Εκτός και αν η εφαρμογή απευθύνεται σε αμερικάνους, θα έχει πρόβλημα με τα ελληνικά καθώς το XML αποθηκεύεται σε πεδίο ASCII (varchar) αντί για Unicode (nvarchar). Η χρήση ASCII είναι ένα πολύ μεγάλο ρίσκο όταν χρησιμοποιούμε ελληνικά γιατί θα πρέπει όλα τα μηχανήματα, από το server μέχρι τον client ή τον browser, να έχουν ρυθμιστεί σε ελληνικό locale για να αποφευχθεί η εμφάνιση "κινέζικων". Κάτι το οποίο συμβαίνει πολύ σπάνια γι αυτό και ακούμε συχνά κόσμο να λέει "Ο SQL Server δεν δουλεύει με ελληνικά" όταν θα έπρεπε να λέει "η εφαρμογή μου δεν δουλεύει σωστά". &amp;nbsp;Και φυσικά δεν το συζητάμε αν χρειαστεί να αποθηκεύσουμε δεδομένα σε καμμία βαλκανική γλώσσα ...&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Μόλις την προηγούμενη εβδομάδα ρώταγε κάποιος στο Autoexec τί να κάνει με το ελληνικό λογιστικό που του στήσανε και αρνιόταν να δουλέψει σε server με λατινικό locale. Η απάντηση των τεχνικών της εταιρείας "ξαναστήσε το server" δεν αξίζει καν χαρακτηρισμό.&lt;/div&gt;</description></item><item><title>Απ: Αποθήκευση XML</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/67667.aspx</link><pubDate>Fri, 07 Oct 2011 19:55:11 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:67667</guid><dc:creator>George Parissis</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/67667.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=67667</wfw:commentRss><description>&lt;p&gt;Οκ κανένα πρόβλημα. Απλά ήθελα να δω στον SQL Command πως δήλωσες τον τύπο δεδομένων για την παράμετρο της stored procedure που δέχεται VARCHAR(MAX). Το πιο πιθανό, στο μέγεθος δεν είχες βάλει -1 όταν δήλωσες στην SQLCommand ότι αυτή η παράμετρος είναι τύπου VARCHAR. Όταν βάλεις σκέτο VARCHAR τότε σου το κόβει στα 4Κ αν θυμάμαι καλά. Αν βάλεις όμως και το μέγεθος στο -1 τότε δεν το κόβει. Νομίζω εκεί ήτανε το πρόβλημα.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description></item><item><title>Απ: Αποθήκευση XML</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/67665.aspx</link><pubDate>Fri, 07 Oct 2011 19:35:12 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:67665</guid><dc:creator>dimos.homatas</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/67665.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=67665</wfw:commentRss><description>Αντώνη, παρέλειψα να αναφέρω ότι στην λύση ο τύπος στον server είναι πλέον xml. Το ερώτημα είναι το πως προέκυψε το πρόβλημα όμως, και από που και ως που ο server κάνει διακρίσεις.&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Γιώργο, είναι πλέον όλα xml. Σε όλα τα sp ήταν όλα varchar(MAX) και το πρόβλημα προέκυψε σε συγκεκριμένες εγγραφές, και μάλλον λόγω μεγέθους. Έχω πολλές άλλες μικρότερες που δούλευαν κανονικά. Και εγώ την ίδια απαίτηση με την δικιά σου έχω, αλλά ο sql server (μάλλον) δεν μας τα είπε καλά... Στο τέλος έγιναν όλα xml, και σε συνδυασμό με το SqlXml object parameter, έπαιξε.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Το ερώτημα είναι, γιατί τέτοιες ... κόνξες! Κάποια δεδομένα του είπαμε να αποθηκεύσει σε έναν varchar...&amp;nbsp;&lt;/div&gt;</description></item><item><title>Απ: Αποθήκευση XML</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/67664.aspx</link><pubDate>Fri, 07 Oct 2011 18:49:21 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:67664</guid><dc:creator>George Parissis</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/67664.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=67664</wfw:commentRss><description>&lt;p&gt;Έχεις και άλλα XML που είναι περίπου στα 500Kb (Kb&amp;nbsp;ή KB;)&amp;nbsp;αλλά έχουν αποθηκευτεί σωστά στον server όταν είχες σαν τύπο το VARCHAR(MAX);&lt;/p&gt;&lt;p&gt;Χρησιμοποιώ το NVARCHAR(MAX) εδώ και πολύ καιρό για XML και ποτέ δεν είχα κάποιο πρόβλημα και μιλάμε επίσης για&amp;nbsp;αρχεία της τάξης των ΚΒ. Γνωρίζω τον ειδικό τύπο XML που έχει ο server αλλά δεν έτυχε ακόμα να τον χρησιμοποιήσω. Η μόνη απαίτηση που έχω από αυτά τα XML δεδομένα είναι απλά να σωθούν και τίποτα άλλο, οπότε το NVARCHAR με βόλεψε.&lt;/p&gt;&lt;p&gt;Θα ήθελα να δω την δήλωση της παραμέτρου που έκανες στον SQLCommand για τα XML δεδομένα. Νομίζω πως το πρόβλημα είναι conversion error και θα πρέπει να έγιναν truncate όλα τα δεδομένα XML μεγάλου μεγέθους και όχι μόνο ένα.&lt;/p&gt;</description></item><item><title>Απ: Αποθήκευση XML</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/67662.aspx</link><pubDate>Fri, 07 Oct 2011 18:13:45 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:67662</guid><dc:creator>Antonios Chatzipavlis</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/67662.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=67662</wfw:commentRss><description>Νομίζω ότι καλο θα ήταν να δοκίμασεις το XML data type.Για το λόγο αυτο φτιαχθηκε.</description></item></channel></rss>