<?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>Adding negative values To SmallDatetime ή γιατί διαφέρει το -1 απο το +(-1)</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/350.aspx</link><pubDate>Fri, 22 Oct 2004 20:35:43 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:350</guid><dc:creator>raPhaeL</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/350.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=28&amp;PostID=350</wfw:commentRss><description>&lt;font face="Tahoma" size="2"&gt;Έχουμε τον εξής κώδικα TSQL:&lt;br /&gt; ----------------------------------&lt;br /&gt; -- A.&lt;br /&gt; DECLARE @Dtm SMALLDATETIME&lt;br /&gt; SET @Dtm=GETDATE()&lt;br /&gt; SET @Dtm=@Dtm-1&lt;br /&gt; &lt;br /&gt; -- B.&lt;br /&gt; DECLARE @Dtm SMALLDATETIME&lt;br /&gt; SET @Dtm=GETDATE()&lt;br /&gt; SET @Dtm=@Dtm+(-1)&lt;br /&gt; ----------------------------------&lt;br /&gt; -- C.&lt;br /&gt; DECLARE @Dtm DATETIME&lt;br /&gt; SET @Dtm=GETDATE()&lt;br /&gt; SET @Dtm=@Dtm+(-1)&lt;br /&gt; &lt;br /&gt; -- D.&lt;br /&gt; DECLARE @Dtm DATETIME&lt;br /&gt; SET @Dtm=GETDATE()&lt;br /&gt; SET @Dtm=@Dtm-1&lt;br /&gt; ----------------------------------&lt;br /&gt; &lt;br /&gt; Στα A,C,D όλα είναι εντάξει , το Β βγάζει : Arithmetic overflow error converting expression to data type smalldatetime.&lt;br /&gt; &lt;br /&gt; Γιατί άραγε;&lt;br /&gt; &lt;br /&gt; Μάλλον γιαυτό:&lt;br /&gt; Σε όλες τις περιπτώσεις ο δεύτερος Operator γίνεται convert στο Datatype του πρώτου.&lt;br /&gt; Αναλυτικά &lt;br /&gt; A.SELECT CONVERT(SMALLDATETIME,1)&lt;br /&gt; C.&lt;/font&gt;&lt;font face="Tahoma" size="2"&gt;SELECT CONVERT(DATETIME,-1)&lt;/font&gt;&lt;br /&gt; &lt;font face="Tahoma" size="2"&gt;D.&lt;/font&gt;&lt;font face="Tahoma" size="2"&gt;SELECT CONVERT(DATETIME,1)&lt;br /&gt; &lt;br /&gt; και&amp;nbsp; B.&lt;/font&gt;&lt;font face="Tahoma" size="2"&gt;SELECT CONVERT(SMALLDATETIME,-1)&lt;/font&gt; = &lt;br /&gt; &lt;font face="Tahoma" size="2"&gt;Arithmetic overflow error converting expression to data type smalldatetime.&lt;br /&gt; &lt;br /&gt; έτσι για να έχουμε να ασχολούμαστε ....&lt;br /&gt; &lt;/font&gt;&lt;font face="Tahoma" size="2"&gt;&lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;/font&gt;</description></item></channel></rss>