<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://www.dotnetzone.gr:443/cs/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="el"><title type="html">Ioannis Manoussakis</title><subtitle type="html">Όσο ζω μαθαίνω</subtitle><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/atom.aspx</id><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/default.aspx" /><link rel="self" type="application/atom+xml" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/atom.aspx" /><generator uri="http://communityserver.org" version="2.1.20423.1">Community Server</generator><updated>2006-02-11T10:47:00Z</updated><entry><title>Αναζήτηση εγγραφής σε SQL με πληκτρολόγηση ελληνικών και λατινικών χαρακτήρων.</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2009/07/29/sql.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2009/07/29/sql.aspx</id><published>2009-07-29T21:01:00Z</published><updated>2009-07-29T21:01:00Z</updated><content type="html">&lt;P&gt;Πόσες φορές μας έχει τύχει να μήν προσέχουμε την γλώσσα του πληκτρολογίου μας και να γράφουμε σέ ένα πεδίο εύρεσης λατινικούς χαρακτήρες και κατόπιν να χρειάζεται να σβήσουμε αυτό που γράψαμε.&lt;/P&gt;
&lt;P&gt;Πόσο ποιό καλό θα ήταν να αλλάξουμε την γλώσσα του πληκτρολογίου μας και να συνεχίσουμε από εκεί που σταματήσαμε πληκτρολογώντας μέ ελληνικούς χαρακτήρες.&lt;/P&gt;
&lt;P&gt;Π.Χ. Θέλουμε να ψάξουμε στον πίνακα Products για τα προϊόντα που περιέχουν στην περιγραφή τους την λέξη αδιαβροχο.&lt;/P&gt;
&lt;P&gt;Θα γράφαμε select * from Products where&amp;nbsp;ProductName&amp;nbsp;like '%αδιαβροχο%' και φυσικά θα μας επέστρεφε τα προϊόντα για τα οποία έτρεξε το select.&lt;/P&gt;
&lt;P&gt;Τι θα γινόταν όμως αν γράφαμε το εξής select * from Products where ProductName like '%Adiaβροχο%' . Φυσικά και δεν θα μας επέστρεφε τίποτα.&lt;/P&gt;
&lt;P&gt;Παρακάτω θα σας δώσω μία sql function η οποία κάνει εφικτό το παραπάνω search&lt;/P&gt;&lt;PRE&gt;&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:black;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;GO
&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:teal;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;/****** Object:  UserDefinedFunction [dbo].[SearchAny]    Script Date: 07/29/2009 14:21:12 ******/&lt;/SPAN&gt;
&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt;  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;EXISTS&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SELECT&lt;/SPAN&gt; * &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;FROM&lt;/SPAN&gt; dbo.&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:lawngreen;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;sysobjects&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;WHERE&lt;/SPAN&gt; id = &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:fuchsia;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;OBJECT_ID&lt;/SPAN&gt;(N&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'[dbo].[SearchAny]'&lt;/SPAN&gt;) &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;AND&lt;/SPAN&gt; xtype &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;in&lt;/SPAN&gt; (N&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'FN'&lt;/SPAN&gt;, N&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'IF'&lt;/SPAN&gt;, N&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'TF'&lt;/SPAN&gt;))
&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;DROP&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;FUNCTION&lt;/SPAN&gt; [dbo].[SearchAny]
GO
&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:teal;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;/****** Object:  UserDefinedFunction [dbo].[SearchAny]    Script Date: 07/29/2009 14:21:38 ******/&lt;/SPAN&gt;
&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ANSI_NULLS&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;OFF&lt;/SPAN&gt;
GO
&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;QUOTED_IDENTIFIER&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;OFF&lt;/SPAN&gt;
GO

&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;CREATE&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;FUNCTION&lt;/SPAN&gt; [dbo].[SearchAny](@value &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;varchar&lt;/SPAN&gt;(8000)) RETURNS &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;varchar&lt;/SPAN&gt;(8000)  
&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;AS&lt;/SPAN&gt;  
&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;BEGIN&lt;/SPAN&gt;  
 &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;DECLARE&lt;/SPAN&gt;   @i  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;int&lt;/SPAN&gt;,  
		   @length  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;int&lt;/SPAN&gt;,  
		   @character  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:fuchsia;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;char&lt;/SPAN&gt;(1),  
		   @newValue  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;varchar&lt;/SPAN&gt;(8000)  
  
 &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:fuchsia;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ISNULL&lt;/SPAN&gt;(@value, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;''&lt;/SPAN&gt;) = &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;''&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;RETURN&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;''&lt;/SPAN&gt;  
  
 &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:teal;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;-- Αντικατάσταση των διφθόγγων  ελληνικά,αγγλικά&lt;/SPAN&gt;
 &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @value = &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:fuchsia;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;REPLACE&lt;/SPAN&gt;(@value, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'οι'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'I'&lt;/SPAN&gt;)  
 &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @value = &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:fuchsia;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;REPLACE&lt;/SPAN&gt;(@value, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'ει'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'I'&lt;/SPAN&gt;)  
 &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @value = &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:fuchsia;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;REPLACE&lt;/SPAN&gt;(@value, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'αι'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'E'&lt;/SPAN&gt;)  
 

 &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @value = &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:fuchsia;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;REPLACE&lt;/SPAN&gt;(@value, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'oi'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'I'&lt;/SPAN&gt;)  
 &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @value = &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:fuchsia;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;REPLACE&lt;/SPAN&gt;(@value, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'ei'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'I'&lt;/SPAN&gt;)  
 &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @value = &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:fuchsia;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;REPLACE&lt;/SPAN&gt;(@value, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'ai'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'E'&lt;/SPAN&gt;)  
  

 &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @value = &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:fuchsia;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;REPLACE&lt;/SPAN&gt;(@value, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'ου'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'U'&lt;/SPAN&gt;)  
 &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @value = &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:fuchsia;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;REPLACE&lt;/SPAN&gt;(@value, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'ou'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'U'&lt;/SPAN&gt;)  
  
 &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @value = &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:fuchsia;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;REPLACE&lt;/SPAN&gt;(@value, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'th'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'U'&lt;/SPAN&gt;) &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:teal;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;-- Ελληνικό θήτα &lt;/SPAN&gt;
  
 &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SELECT&lt;/SPAN&gt; @length = &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:fuchsia;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;LEN&lt;/SPAN&gt;(@value), @newValue = &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;''&lt;/SPAN&gt;  
  
 &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @i = 1  
 &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;WHILE&lt;/SPAN&gt; @i &amp;lt;= @length  
 &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;BEGIN&lt;/SPAN&gt;  
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @character = &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:fuchsia;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SUBSTRING&lt;/SPAN&gt;(@value, @i, 1)  

&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:teal;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;----Ανάθεση χαρακτήρα  &lt;/SPAN&gt;
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt;  @character &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IN&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Α'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Ά'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'α'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'ά'&lt;/SPAN&gt;) &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @character= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'A'&lt;/SPAN&gt;  
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ELSE&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt; @character &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IN&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Β'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'β'&lt;/SPAN&gt;)  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @character= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'B'&lt;/SPAN&gt;  
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ELSE&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt; @character &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IN&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Γ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'γ'&lt;/SPAN&gt;)  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @character= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'G'&lt;/SPAN&gt;  
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ELSE&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt; @character &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IN&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Δ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'δ'&lt;/SPAN&gt;)  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @character= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'D'&lt;/SPAN&gt;  
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ELSE&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt; @character &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IN&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Ε'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'ε'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Έ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'έ'&lt;/SPAN&gt;) &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @character= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'E'&lt;/SPAN&gt;  
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ELSE&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt; @character &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IN&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Ζ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'ζ'&lt;/SPAN&gt;)  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @character= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Z'&lt;/SPAN&gt;  
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ELSE&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt; @character &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IN&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Η'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'η'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Ή'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'ή'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Υ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'υ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Ύ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'ύ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Ϋ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'ϋ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Ι'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'ι'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Ί'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'ί'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Ϊ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'ϊ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Y'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'y'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'H'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'h'&lt;/SPAN&gt;)  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @character= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'I'&lt;/SPAN&gt;  
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ELSE&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt; @character &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IN&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Θ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'θ'&lt;/SPAN&gt;)  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @character= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'U'&lt;/SPAN&gt;  
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ELSE&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt; @character &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IN&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Κ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'κ'&lt;/SPAN&gt;)  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @character= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'K'&lt;/SPAN&gt;  
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ELSE&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt; @character &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IN&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Λ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'λ'&lt;/SPAN&gt;)  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @character= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'L'&lt;/SPAN&gt;  
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ELSE&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt; @character &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IN&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Μ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'μ'&lt;/SPAN&gt;)  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @character= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'M'&lt;/SPAN&gt;  
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ELSE&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt; @character &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IN&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Ν'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'ν'&lt;/SPAN&gt;)  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @character= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'N'&lt;/SPAN&gt;  
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ELSE&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt; @character &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IN&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Ξ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'ξ'&lt;/SPAN&gt;)  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @character= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'J'&lt;/SPAN&gt;  
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ELSE&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt; @character &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IN&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Ο'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'ο'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Ό'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'ό'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Ω'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'ω'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Ώ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'ώ'&lt;/SPAN&gt;)  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @character= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'O'&lt;/SPAN&gt;  
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ELSE&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt; @character &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IN&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Π'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'π'&lt;/SPAN&gt;)  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @character= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'P'&lt;/SPAN&gt;  
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ELSE&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt; @character &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IN&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Ρ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'ρ'&lt;/SPAN&gt;)  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @character= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'R'&lt;/SPAN&gt;  
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ELSE&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt; @character &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IN&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Σ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'σ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'ς'&lt;/SPAN&gt;) &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @character= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'S'&lt;/SPAN&gt;  
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ELSE&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt; @character &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IN&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Τ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'τ'&lt;/SPAN&gt;)  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @character= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'T'&lt;/SPAN&gt;  
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ELSE&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt; @character &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IN&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Φ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'φ'&lt;/SPAN&gt;)  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @character= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'F'&lt;/SPAN&gt;  
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ELSE&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt; @character &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IN&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Χ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'χ'&lt;/SPAN&gt;)  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @character= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'X'&lt;/SPAN&gt;  
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ELSE&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt; @character &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IN&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'Ψ'&lt;/SPAN&gt;, &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'ψ'&lt;/SPAN&gt;)  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @character= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'C'&lt;/SPAN&gt;  
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ELSE&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IF&lt;/SPAN&gt; @character &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:silver;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;IN&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'.'&lt;/SPAN&gt;)   &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @character= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;'%'&lt;/SPAN&gt;  
  
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:teal;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;--Δημιουργία λέξης&lt;/SPAN&gt;
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @newValue = @newValue + @character 
  &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;SET&lt;/SPAN&gt; @i = @i + 1  
 &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;END&lt;/SPAN&gt;  
  
 &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;RETURN&lt;/SPAN&gt; &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:fuchsia;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;UPPER&lt;/SPAN&gt;(@newValue)  
&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;END&lt;/SPAN&gt;  &lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:black;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;Τώρα χρησιμοποιώνας στο select statement την παραπάνω function το select θα μου επιστρέψει δεδομένα&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:black;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;select * from Products where &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:fuchsia;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;UPPER&lt;/SPAN&gt;(dbo.SearchAny(ProductName)) like '%'+dbo.SearchAny('&lt;FONT size=2&gt;Adiaβροχο')+'%'&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:black;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;&lt;FONT size=2&gt;Ελπίζω η παραπάνω συνάρτηση να βοηθήσει .Επίσης οποιαδήποτε παρατήρηση ,διόρθωση και βελτίωση του παραπάνω κώδικα είναι καλοδεχούμενη.&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;PRE&gt;&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:black;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/PRE&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=52846" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term="MS SQL" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/MS+SQL/default.aspx" /></entry><entry><title>Βάσεις σε SQL Server με διαφορετικό COLLATION και σύνδεση πινάκων μεταξύ τους σε QUERY</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2009/03/31/sql-server-collation-query.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2009/03/31/sql-server-collation-query.aspx</id><published>2009-03-31T15:25:00Z</published><updated>2009-03-31T15:25:00Z</updated><content type="html">&lt;PRE&gt;Έχουμε εγκατεστημένο έναν SQL SERVER με COLLATION GREEK_CI_AS&lt;/PRE&gt;&lt;PRE&gt;Σε αυτόν υπάρχουν εγκατεστημένες δύο βάσεις η μία myFirst_db &lt;/PRE&gt;&lt;PRE&gt;με το default COLLATION του SQL SERVER και η mySecond_db άλλη &lt;/PRE&gt;&lt;PRE&gt;μέ COLLATION GREEK_CI_AI&lt;/PRE&gt;&lt;PRE&gt;Στις δύο βάσεις υπάρχουν δύο ομοιοι πίνακες Products όπως παρακάτω&lt;/PRE&gt;&lt;FONT size=2&gt;&lt;PRE&gt;&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:black;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;Πίνακας Products (
	                ProductId &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;int&lt;/SPAN&gt;,
                         PartDescription &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;varchar&lt;/SPAN&gt;(60),		  
                         Category &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;varchar&lt;/SPAN&gt;(10),
                         UnitOfMeassure &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;varchar&lt;/SPAN&gt;(10),
                         UnitPrice &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;numeric&lt;/SPAN&gt;(28,6)
   	        )&lt;/SPAN&gt;&lt;/PRE&gt;
&lt;P&gt;&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:black;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;&lt;FONT size=2&gt;Αν τώρα γράφαμε ένα query ώστε να πάρουμε ένα union και τον δύο πινάκων .&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:black;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;
&lt;P&gt;use &lt;FONT color=#000000&gt;myFirst_db&lt;/FONT&gt; &lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;GO&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;select&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; ProductId&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;PartDescription&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;Category&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;UnitOfMeassure&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;UnitPrice &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;from&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; Products &lt;/P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;
&lt;P&gt;union all&lt;/P&gt;
&lt;P&gt;select&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; ProductId&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;PartDescription&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;Category&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;UnitOfMeassure&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;UnitPrice &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;from&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; mySecond_db&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;..&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;Products&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;θα είχαμε το παρακάτω αποτέλεσμα&lt;/FONT&gt;&lt;/P&gt;&lt;FONT size=2&gt;&lt;FONT size=1&gt;
&lt;P&gt;&lt;FONT style="BACKGROUND-COLOR:#ffffff;" color=#ff0000 size=2&gt;Msg 457, Level 16, State 1, Line 1&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT style="BACKGROUND-COLOR:#ffffff;" color=#ff0000 size=2&gt;Implicit conversion of varchar value to varchar cannot be performed because the collation of the value is unresolved due to a collation conflict.&lt;/FONT&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;
&lt;P&gt;&lt;FONT size=2&gt;Ο τρόπος που μπορούμε να αποφύγουμε το παρακάτω λάθος είναι να δηλώσουμε στο Query και συγκεκριμμένα στα αλφαριθμητικά πεδία το COLLATION που έχει η βάση που κάνουμε use δηλ. το Query θα πρέπει να διαμορφωθεί όπως παρακάτω.&lt;/FONT&gt;&lt;/P&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;
&lt;P&gt;&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:black;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#008000&gt;----η myFirst_db έχει COLLATION GREEK_CI_AS&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;use &lt;FONT color=#000000&gt;myFirst_db&lt;/FONT&gt; &lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;GO&lt;/FONT&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;
&lt;P&gt;select&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; ProductId&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;PartDescription&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;Category&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;UnitOfMeassure&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;UnitPrice &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;from&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; Products &lt;/P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;
&lt;P&gt;union all&lt;/P&gt;
&lt;P&gt;select&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; ProductId&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;PartDescription &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;COLLATE&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; GREEK_CI_AS &lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;Category &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;COLLATE&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; GREEK_CI_AS &lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;UnitOfMeassure &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;COLLATE&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; GREEK_CI_AS &lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;UnitPrice &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;from&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; mySecond_db&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;..&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;Products&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;Ελπίζω το παραπάνω να φανεί χρήσιμο σε κάποιους από την κοινότητα το&amp;nbsp;dotnetzone.&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#808080&gt;&lt;FONT color=#808080&gt;&amp;nbsp;&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=49732" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term="MS SQL" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/MS+SQL/default.aspx" /></entry><entry><title>Αλλαγή του owner των πινάκων της εφαρμογής μέ μόνο μία γραμμή κώδικα στόν SQL</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2008/05/13/owner-sql.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2008/05/13/owner-sql.aspx</id><published>2008-05-13T19:07:00Z</published><updated>2008-05-13T19:07:00Z</updated><content type="html">&lt;P&gt;&lt;FONT size=3&gt;Παρακάτω βλέπουμε πως σε μιά γραμμή κώδικα μπορούμε να αλλάξουμε τον owner όλων των πινάκων μιάς βάσης δεδομένων .&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=3&gt;sp_MSforeachtable 'sp_changeobjectowner ''?'',''τοΟνομαΤουΝεουOwnerΕδω'''&lt;/FONT&gt;&lt;/P&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=41959" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term="MS SQL" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/MS+SQL/default.aspx" /></entry><entry><title>Πώς μπορούμε να παγιδεύσουμε το event κάνουμε κλικ πάνω στο Title Bar μιας φόρμας. </title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2007/10/12/event-title-bar.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2007/10/12/event-title-bar.aspx</id><published>2007-10-12T15:39:00Z</published><updated>2007-10-12T15:39:00Z</updated><content type="html">&lt;P&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:black;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;&lt;FONT face=Tahoma color=#000000 size=2&gt;Εντοπισμός του αριστερού κλικ του ποντικιού πάνω στο TITLE BAR μιας φόρμας και εκμετάλευση του Opacity έτσι ώστε όταν μετακινούμε την φόρμα αυτή να συμπεριφέρεται όπως στα Windows Vista.&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:black;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;Private&lt;/SPAN&gt; &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;Const&lt;/SPAN&gt; WIN_MOUSEBUTTONDOWN &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;Long&lt;/SPAN&gt; &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:red;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;=&lt;/SPAN&gt; &amp;amp;HA1&lt;BR&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;Private&lt;/SPAN&gt; &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;Const&lt;/SPAN&gt; WIN_MOUSEBUTTONUP &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;Long&lt;/SPAN&gt; &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:red;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;=&lt;/SPAN&gt; &amp;amp;HA0&lt;BR&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;Protected&lt;/SPAN&gt; &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;Overrides&lt;/SPAN&gt; &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;Sub&lt;/SPAN&gt; DefWndProc(&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;ByRef&lt;/SPAN&gt;&amp;nbsp;m &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;As&lt;/SPAN&gt; System.Windows.Forms.Message)&lt;BR&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:green;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;' -- Εντοπισμός του αριστερού κλικ του ποντικιού στό Title Bar της φόρμας&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;If&lt;/SPAN&gt; &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;CLng&lt;/SPAN&gt;(m.Msg) &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:red;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;=&lt;/SPAN&gt; WIN_MOUSEBUTTONDOWN &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;Then&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:green;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;' -- Ορίζουμε το opacity της Φόρμας&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;If&lt;/SPAN&gt; &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;Me&lt;/SPAN&gt;.Opacity &amp;lt;&amp;gt; 0.8 &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;Then&lt;/SPAN&gt; &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;Me&lt;/SPAN&gt;.Opacity &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:red;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;=&lt;/SPAN&gt; 0.8&lt;BR&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:green;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;' --Εντοπισμός του όταν αφήνουμε το αριστερό κλικ του pontikio;y&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;ElseIf&lt;/SPAN&gt; &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;CLng&lt;/SPAN&gt;(m.Msg) &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:red;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;=&lt;/SPAN&gt; WIN_MOUSEBUTTONUP &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;Then&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;If&lt;/SPAN&gt; &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;Me&lt;/SPAN&gt;.Opacity &amp;lt;&amp;gt; 1.0 &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;Then&lt;/SPAN&gt; &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;Me&lt;/SPAN&gt;.Opacity &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:red;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;=&lt;/SPAN&gt; 1.0&lt;BR&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;End&lt;/SPAN&gt; &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;If&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:green;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;' -- Συνήθης Λειτουργικότητα&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;MyBase&lt;/SPAN&gt;.DefWndProc(m)&lt;BR&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;End&lt;/SPAN&gt; &lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;Sub&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:black;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;&lt;SPAN style="FONT-WEIGHT:normal;FONT-SIZE:11px;COLOR:blue;FONT-FAMILY:Courier New;BACKGROUND-COLOR:transparent;"&gt;&lt;FONT color=#000000&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=36183" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term=".NET" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/.NET/default.aspx" /></entry><entry><title>Default Trace in SQL Server 2005</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/11/17/20591.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/11/17/20591.aspx</id><published>2006-11-17T17:04:00Z</published><updated>2006-11-17T17:04:00Z</updated><content type="html">&lt;P&gt;Στό Email μου ήρθε για ενημέρωσή μου το παρακάτω κείμενο το οποίο και σας&amp;nbsp; παραθέτω .Πιστεύω ότι είναι αρκετά ενδιαφέρον&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;Problem&lt;BR&gt;&lt;/U&gt;&lt;/STRONG&gt;I have been running SQL Server 2005&amp;nbsp;server side traces to address some SQL Server 2005 performance issues.&amp;nbsp; I have noticed an unusual trace session that is running.&amp;nbsp; I know I have not been running this trace and know I have been diligent about running only a single trace to not impact performance.&amp;nbsp; So where did this trace session coming from? &lt;/P&gt;
&lt;P&gt;&lt;U&gt;&lt;B&gt;Solution&lt;BR&gt;&lt;/B&gt;&lt;/U&gt;SQL Server 2005 is running a default trace.&amp;nbsp; You can think of this as a replacement to the black box mode trace that could have been run in SQL Server 2000 where the last 5 MB of data is captured.&amp;nbsp; The trace's impact should be minimal to the server, but is valuable to be aware of as a DBA or Developer responsible for the server. &lt;/P&gt;
&lt;P&gt;&lt;I&gt;&lt;B&gt;How can I find out if the trace is running on my SQL Server?&lt;/B&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P&gt;The simplest means to determine if the trace is running is to execute the following command:&lt;/P&gt;
&lt;DIV align=left&gt;
&lt;TABLE id=table1 cellSpacing=0 cellPadding=3 width="60%" border=1&gt;

&lt;TR&gt;
&lt;TD&gt;&lt;FONT face="Courier New" size=2&gt;SELECT * &lt;BR&gt;FROM fn_trace_getinfo(default);&lt;BR&gt;GO&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TABLE&gt;&lt;/DIV&gt;
&lt;P&gt;&lt;I&gt;&lt;B&gt;What does the output indicate?&lt;/B&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P&gt;
&lt;TABLE id=table2 cellSpacing=0 cellPadding=3 width="60%" border=1&gt;

&lt;TR&gt;
&lt;TD&gt;&lt;FONT face=Arial size=2&gt;&lt;B&gt;Result Set&lt;/B&gt;&lt;/FONT&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;FONT face=Arial size=2&gt;&lt;B&gt;Description&lt;/B&gt;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&lt;FONT face=Arial size=2&gt;Traceid&lt;/FONT&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;FONT face=Arial size=2&gt;Unique identifier for the trace&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&lt;FONT face=Arial size=2&gt;Property = 1&lt;/FONT&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;FONT face=Arial size=2&gt;Configured trace options &lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&lt;FONT face=Arial size=2&gt;Property = 2&lt;/FONT&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;FONT face=Arial size=2&gt;Trace file name&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&lt;FONT face=Arial size=2&gt;Property = 3&lt;/FONT&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;FONT face=Arial size=2&gt;Max file size for the *.trc file&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&lt;FONT face=Arial size=2&gt;Property = 4&lt;/FONT&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;FONT face=Arial size=2&gt;Stop time for the trace session&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&lt;FONT face=Arial size=2&gt;Property = 5&lt;/FONT&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;FONT face=Arial size=2&gt;Current trace status (1 = On and 0 = Off)&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&lt;FONT face=Arial size=2&gt;Value&lt;/FONT&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;FONT face=Arial size=2&gt;Current value for the traceid\property combination&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TABLE&gt;&lt;/P&gt;
&lt;P&gt;&lt;I&gt;&lt;B&gt;Where is this trace file stored by default?&lt;/B&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P&gt;The trace is stored in the LOG directory for your SQL Server instance (i.e. C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\LOG\) at the root of where your SQL Server is installed.&lt;/P&gt;
&lt;P&gt;&lt;I&gt;&lt;B&gt;Another alternative to determine if the trace is running is to review sp_configure.&lt;/B&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P&gt;To determine if the trace is configured to run, execute sp_configure and review the 'default trace enabled' option.&amp;nbsp; When the config_value and run_value are equal to 1, then this trace is running.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;I&gt;&lt;B&gt;How can I disable this default trace?&lt;/B&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P&gt;To disable the default trace from running, issue the following commands:&lt;/P&gt;
&lt;P&gt;
&lt;TABLE id=table3 cellSpacing=0 cellPadding=3 width="60%" border=1&gt;

&lt;TR&gt;
&lt;TD&gt;&lt;FONT face="Courier New" size=2&gt;EXEC master.dbo.sp_configure 'allow updates', 1;&lt;BR&gt;GO &lt;BR&gt;EXEC master.dbo.sp_configure 'show advanced options', 1;&lt;BR&gt;GO &lt;BR&gt;EXEC master.dbo.sp_configure 'default trace enabled', 0;&lt;BR&gt;GO&lt;BR&gt;RECONFIGURE WITH OVERRIDE;&lt;BR&gt;GO&lt;BR&gt;EXEC master.dbo.sp_configure 'show advanced options', 0;&lt;BR&gt;GO&lt;BR&gt;EXEC master.dbo.sp_configure 'allow updates', 0;&lt;BR&gt;GO&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TABLE&gt;&lt;/P&gt;
&lt;P&gt;*** NOTE *** - When you issue these commands, the trace stops executing immediately. &lt;/P&gt;
&lt;P&gt;&lt;I&gt;&lt;B&gt;Should I disable this trace?&lt;/B&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P&gt;If you were not aware of this trace running and you were not having related or suspected performance issues from this trace, I would say maybe not.&amp;nbsp; The final answer should come after reviewing the output from the trace files to determine if the data is valuable to you.&amp;nbsp; Invaluable information like login creations and drops are captured in these files.&amp;nbsp; You might also find other jewels that may answer some recent outstanding questions.&amp;nbsp; If the value of the information exceeds the potential issue from running this trace, then it should remain enabled.&amp;nbsp; I also encourage you to consider this trace as a source when troubleshooting an issue, so consider reviewing this file the next time a question goes unanswered.&lt;/P&gt;
&lt;P&gt;&lt;I&gt;&lt;B&gt;How can I review the data captured in the trace files?&lt;/B&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P&gt;Let's end on an easy question.&amp;nbsp; Just navigate to the directory where the files are located i.e. C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\LOG\ and double click on the files.&amp;nbsp; Profiler should load and permit you to browse the contents interactively.&lt;/P&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=20591" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term="MS SQL" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/MS+SQL/default.aspx" /></entry><entry><title>Διαγραφή διπλών εγγραφών στον SQL2005 σε πίνακα χωρίς Primary Key</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/11/13/20258.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/11/13/20258.aspx</id><published>2006-11-13T16:41:00Z</published><updated>2006-11-13T16:41:00Z</updated><content type="html">&lt;P&gt;Μέχρι τώρα στον για να διαγράψουμε διπλές εγγραφές σέ ένα πίνακα που δέν έχει Primary Key χρησιμοποιούσαμε την &lt;FONT face="Courier New"&gt;&lt;SPAN style="COLOR: blue"&gt;SET&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #434343"&gt;ROWCOUNT&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: black"&gt;1&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="COLOR: black"&gt;Δηλαδή κάναμε το παρακάτω .&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="COLOR: black"&gt;&lt;FONT face="Courier New"&gt;&lt;SPAN style="COLOR: blue"&gt;SET&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #434343"&gt;ROWCOUNT&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: black"&gt;1&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="COLOR: black"&gt;&lt;SPAN style="COLOR: black"&gt;&lt;FONT color=#0000ff&gt;Delete&lt;/FONT&gt; myTableName where ID=1&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="COLOR: black"&gt;&lt;SPAN style="COLOR: black"&gt;&lt;SPAN style="COLOR: black"&gt;&lt;FONT face="Courier New"&gt;&lt;SPAN style="COLOR: blue"&gt;SET&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #434343"&gt;ROWCOUNT&amp;nbsp;0&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="COLOR: black"&gt;&lt;SPAN style="COLOR: black"&gt;&lt;SPAN style="COLOR: black"&gt;&lt;SPAN style="COLOR: #434343"&gt;&lt;FONT color=#000000&gt;Αυτό συνεχίζει να ισχύει και στον SQL2005 αλλά μπορεί να γίνει χρησιμοποιώντας και την &lt;/FONT&gt;&lt;FONT color=#0000ff&gt;TOP&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="COLOR: black"&gt;&lt;SPAN style="COLOR: black"&gt;&lt;SPAN style="COLOR: black"&gt;&lt;SPAN style="COLOR: #434343"&gt;&lt;FONT color=#000000&gt;&lt;FONT face="Courier New"&gt;&lt;SPAN style="COLOR: blue"&gt;DELETE&amp;nbsp;TOP&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;(&lt;/SPAN&gt;&lt;SPAN style="COLOR: black"&gt;1&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;)&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;FROM&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: black"&gt;&lt;FONT face=Tahoma&gt;myTableName&amp;nbsp; &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;WHERE&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: black"&gt;ID&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;=&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN style="COLOR: black"&gt;&lt;FONT face="Courier New"&gt;1 &lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="COLOR: black"&gt;&lt;SPAN style="COLOR: black"&gt;&lt;SPAN style="COLOR: black"&gt;&lt;SPAN style="COLOR: #434343"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="COLOR: black"&gt;Γιατί θα μου πείτε πρέπει να χρησιμοποιούμε την &lt;FONT color=#0000ff&gt;TOP &lt;/FONT&gt;&lt;FONT color=#000000&gt;και όχι την &lt;SPAN style="COLOR: #434343"&gt;&lt;FONT face="Courier New"&gt;ROWCOUNT&amp;nbsp;&lt;FONT color=#000000&gt; &lt;FONT face=Tahoma&gt;η απάντηση έρχεται από την ίδια την Microsoft&amp;nbsp;όπως φαίνεται&amp;nbsp;παρακάτω.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="COLOR: black"&gt;&lt;SPAN style="COLOR: black"&gt;&lt;SPAN style="COLOR: black"&gt;&lt;SPAN style="COLOR: #434343"&gt;&lt;SPAN style="COLOR: black"&gt;&lt;FONT color=#000000&gt;&lt;FONT face=Arial&gt;&lt;SPAN style="COLOR: #434343"&gt;&lt;FONT face=Tahoma color=#000000&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="COLOR: black"&gt;&lt;SPAN style="COLOR: black"&gt;&lt;SPAN style="COLOR: black"&gt;&lt;SPAN style="COLOR: #434343"&gt;&lt;SPAN style="COLOR: black"&gt;&lt;FONT color=#000000&gt;&lt;FONT face=Arial&gt;&lt;SPAN style="COLOR: #434343"&gt;&lt;FONT face=Tahoma color=#000000&gt;Using SET ROWCOUNT will not affect DELETE, INSERT, and UPDATE statements in the next release of SQL Server. Avoid using SET ROWCOUNT together with DELETE, INSERT, and UPDATE statements in new development work, and plan to modify applications that currently use it. Also, for DELETE, INSERT, and UPDATE statements that currently use SET ROWCOUNT, we recommend that you rewrite them to use the TOP syntax&lt;/FONT&gt;.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;BR&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;
&lt;P&gt;&lt;SPAN style="COLOR: black"&gt;&lt;SPAN style="COLOR: black"&gt;&lt;SPAN style="COLOR: black"&gt;&lt;SPAN style="COLOR: #434343"&gt;&lt;FONT color=#000000&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=20258" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term="MS SQL" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/MS+SQL/default.aspx" /></entry><entry><title>BACKUP IN SQL WITH PASSWORD PROTECTION</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/11/09/20090.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/11/09/20090.aspx</id><published>2006-11-09T22:25:00Z</published><updated>2006-11-09T22:25:00Z</updated><content type="html">&lt;P&gt;&lt;CODE&gt;&lt;SPAN style="COLOR: blue"&gt;&lt;FONT color=#000000&gt;Ο μόνος τρόπος για να πάρουμε Backup στόν SQL SERVER το οποίο να προστατεύεται μέ χρήση password είναι μέσω της T-SQL . Παρακέτω παραθέτω πώς αυτό μπορεί να γίνει.&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;&lt;CODE&gt;&lt;SPAN style="COLOR: blue"&gt;&lt;FONT color=#000000&gt;Εντολή Backup&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;&lt;CODE&gt;&lt;SPAN style="COLOR: blue"&gt;BACKUP&amp;nbsp;DATABASE&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: black"&gt;Northwind&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;TO&amp;nbsp;DISK=&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;'C:\Northwind.BAK'&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;WITH&amp;nbsp;MEDIAPASSWORD=&lt;FONT color=#ff0000&gt;'3$56#$21'&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/P&gt;
&lt;P&gt;Παρακάτω βλέπουμε πώς οι εντολές για Restore χωρίς την χρήση το password που χρησιμοποιήσαμε μάς επιστρέφουν μυνήματα λάθους.&lt;/P&gt;
&lt;P&gt;&lt;CODE&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;RESTORE&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: black"&gt;FILELISTONLY&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;FROM&amp;nbsp;DISK=&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;'C:\Northwind.BAK'&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/P&gt;
&lt;P align=center&gt;&lt;IMG height=71 src="http://www.mssqltips.com/tipimages/1108_accessdenied_file.jpg" width=357 border=0&gt;&lt;/P&gt;
&lt;P&gt;&lt;CODE&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;RESTORE&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: black"&gt;HEADERONLY&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;FROM&amp;nbsp;DISK=&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;'C:\Northwind.BAK'&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/P&gt;
&lt;P align=center&gt;&lt;IMG height=72 src="http://www.mssqltips.com/tipimages/1108_accessdenied_header.jpg" width=372 border=0&gt;&lt;/P&gt;
&lt;P align=left&gt;&lt;CODE&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;RESTORE&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: black"&gt;VERIFYONLY&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;FROM&amp;nbsp;DISK=&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;'C:\Northwind.BAK'&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/P&gt;
&lt;P align=center&gt;&lt;IMG height=73 src="http://www.mssqltips.com/tipimages/1108_accessdenied_verify.jpg" width=372 border=0&gt;&lt;/P&gt;
&lt;P align=left&gt;&lt;CODE&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;RESTORE&amp;nbsp;DATABASE&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: black"&gt;Northwind&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;FROM&amp;nbsp;DISK=&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;'C:\Northwind.BAK'&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/P&gt;
&lt;P align=center&gt;&lt;IMG height=71 src="http://www.mssqltips.com/tipimages/1108_accessdenied_restore.jpg" width=363 border=0&gt;&lt;/P&gt;
&lt;P align=left&gt;Άν τώρα ορίσουμε το password σέ οποιαδήποτε από της παρακάτω εντολές restore τότε το Restore είναι εφικτό.&lt;/P&gt;
&lt;P align=left&gt;&lt;CODE&gt;&lt;SPAN style="COLOR: blue"&gt;RESTORE&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: black"&gt;FILELISTONLY&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;FROM&amp;nbsp;DISK=&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;'C:\Northwind.BAK'&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;WITH&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: black"&gt;&lt;FONT color=#0000ff&gt;MEDIAPASSWORD=&lt;/FONT&gt;&lt;FONT color=#ff0000&gt;'3$56#$21'&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;RESTORE&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: black"&gt;HEADERONLY&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;FROM&amp;nbsp;DISK=&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;'C:\Northwind.BAK'&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;WITH&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: black"&gt;&lt;FONT color=#0000ff&gt;MEDIAPASSWORD=&lt;/FONT&gt;&lt;FONT color=#ff0000&gt;'3$56#$21'&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;RESTORE&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: black"&gt;VERIFYONLY&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;FROM&amp;nbsp;DISK=&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;'C:\Northwind.BAK'&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;WITH&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: black"&gt;&lt;FONT color=#0000ff&gt;MEDIAPASSWORD=&lt;/FONT&gt;&lt;FONT color=#ff0000&gt;'3$56#$21'&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&lt;BR&gt;RESTORE&amp;nbsp;DATABASE&amp;nbsp;&lt;/SPAN&gt;Northwind&lt;SPAN style="COLOR: black"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;FROM&amp;nbsp;DISK=&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;'C:\Northwind.BAK'&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;WITH&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: black"&gt;&lt;FONT color=#0000ff&gt;MEDIAPASSWORD=&lt;/FONT&gt;&lt;FONT color=#ff0000&gt;'3$56#$21'&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/P&gt;
&lt;P align=left&gt;&lt;CODE&gt;&lt;SPAN style="COLOR: black"&gt;&lt;FONT color=#000000&gt;Αν προσπαθήσουμε να κάνουμε Restore από τα εργαλεία του Enterprise Manager τότε θα πάρουμε μύνημα λάθους γιατί δέν υποστηρίζεται ή διαδικασία σε paswword protected Backups.&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/P&gt;
&lt;P align=left&gt;&lt;CODE&gt;&lt;SPAN style="COLOR: black"&gt;Βεβαίως το παραπάνω δέν αποτελεί και την μέγιστη ασφάλεια αλλά τουλάχιστον αποτελεί ακόμα ένα εμπόδιο σε κάποιον που με τον ένα ή τον άλλο τρόπο καταφέρει να πάρει το Backup στα χέρια του.&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/P&gt;
&lt;P align=left&gt;&lt;CODE&gt;&lt;SPAN style="COLOR: black"&gt;&lt;FONT color=#ff0000&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&amp;nbsp;&lt;/P&gt;
&lt;P align=left&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=20090" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term="MS SQL" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/MS+SQL/default.aspx" /></entry><entry><title>Procedure στον SQL Server για αποστολή Mail</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/10/25/19181.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/10/25/19181.aspx</id><published>2006-10-25T20:48:00Z</published><updated>2006-10-25T20:48:00Z</updated><content type="html">&lt;P&gt;Παρακάτω παραθέτω μία procedure που μπορούμε να χρησιμοποιήσουμε για αποστολή Anonymous Email μέσω SMTP από τον SQL Server 2000&lt;/P&gt;
&lt;P&gt;Προσοχή ο χρήστης πρέπει να έχει στην master δικαιώματα στίς παρακάτω procedures του SQL ή να είναι μέλος του sysadmin ή κάποιου άλλου group που του έχουμε δώσει δικαιώματα εκτέλεσης στις procedure.&lt;/P&gt;
&lt;P&gt;Procedures SQL : sp_OACreate ,sp_OASetProperty ,sp_OADestroy ,sp_OAGetErrorInfo &lt;/P&gt;
&lt;P&gt;Επίσης στό σημείο που δηλώνουμε τον SMTP SERVER αλλάζουμε το SERVERNAME μέ τό όνομα του δικού μας SERVER&lt;/P&gt;
&lt;P&gt;CREATE PROCEDURE Smtp_SendMail_sp&lt;BR&gt;(&lt;BR&gt;@MailFrom as nvarchar(50),&lt;BR&gt;@MailTo as nvarchar(50),&lt;BR&gt;@MailSubject as nvarchar(255),&lt;BR&gt;@MailBody as text &lt;BR&gt;) &lt;BR&gt;AS&lt;/P&gt;
&lt;P&gt;-- Declare &lt;BR&gt;DECLARE @msg int&lt;BR&gt;DECLARE @config int&lt;BR&gt;DECLARE @bo int&lt;BR&gt;DECLARE @src varchar(255), @desc varchar(255)&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;/* Δημιουργία του message object */&lt;BR&gt;EXEC @bo = sp_OACreate 'CDO.Message', @msg OUT &lt;BR&gt;/* Δημιουργία του configuration object */&lt;BR&gt;EXEC @bo = sp_OACreate 'CDO.Configuration', @config OUT &lt;/P&gt;
&lt;P&gt;/* Configuration Object */&lt;BR&gt;-- Αποστολή μυνήματος χρησιμοποιώντας τό ίκτυο&lt;BR&gt;EXEC @bo = sp_OASetProperty @config, 'Fields(cdoSendUsingMethod)', 'cdoSendUsingPort'&lt;BR&gt;-- Δήλωση του SMTP Server &lt;BR&gt;EXEC @bo = sp_OASetProperty @config, 'Fields(cdoSMTPServer)', 'SERVERNAME' &lt;BR&gt;-- Server SMTP Port&lt;BR&gt;EXEC @bo = sp_OASetProperty @config, 'Fields(cdoSMTPServerPort)', 25 &lt;BR&gt;-- Anonymous SMTP Authenticate&lt;BR&gt;EXEC @bo = sp_OASetProperty @config, 'Fields(cdoSMTPAuthenticate)', 'cdoAnonymous' &lt;BR&gt;EXEC sp_OAMethod @config, 'Fields.Update'&lt;/P&gt;
&lt;P&gt;/* Message Object */&lt;BR&gt;EXEC @bo = sp_OASetProperty @msg, 'Configuration', @config -- set message.configuration = config&lt;BR&gt;EXEC @bo = sp_OASetProperty @msg, 'To', @MailTo&lt;BR&gt;EXEC @bo = sp_OASetProperty @msg, 'From', @MailFrom&lt;BR&gt;EXEC @bo = sp_OASetProperty @msg, 'Subject', @MailSubject&lt;BR&gt;EXEC @bo = sp_OASetProperty @msg, 'TextBody', @MailBody&lt;BR&gt;EXEC sp_OAMethod @msg, 'Send()'&lt;/P&gt;
&lt;P&gt;/* Καταστροφή τών objects */&lt;BR&gt;EXEC @bo = sp_OADestroy @msg&lt;BR&gt;EXEC @bo = sp_OADestroy @config&lt;/P&gt;
&lt;P&gt;-- Χειρισμός Λαθών&lt;BR&gt;IF @bo &amp;lt;&amp;gt; 0&lt;BR&gt;BEGIN&lt;BR&gt;EXEC sp_OAGetErrorInfo @msg, @src OUT, @desc OUT &lt;BR&gt;SELECT convert(varbinary(4),@bo) as ErrNo, @src as Source, @desc as Description&lt;BR&gt;RETURN&lt;BR&gt;END&lt;/P&gt;
&lt;P&gt;---Τρόπος Εκτέλεσης&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &lt;FONT size=2&gt;EXEC sp_SMTPemail &lt;A href="mailto:'someone@mplampla.gr'"&gt;&lt;FONT color=#ff0000&gt;'someone@mplampla.gr'&lt;/FONT&gt;&lt;/A&gt;&lt;FONT color=#ff0000&gt;, &lt;/FONT&gt;&lt;A href="mailto:'anotherone@mplampla.gr'"&gt;&lt;FONT color=#ff0000&gt;'anotherone@mplampla.gr'&lt;/FONT&gt;&lt;/A&gt;&lt;FONT color=#ff0000&gt;, 'Το Θέμα μου','Θα συναντηθούμε στο καφενείο του DotnetZone'&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;&amp;nbsp; Ελπίζω να φανεί χρήσιμο σέ κάποιους .&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#ff0000&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=19181" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term="MS SQL" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/MS+SQL/default.aspx" /></entry><entry><title>Μια UDF η οποία μας επιστρέφει της εργάσιμες μέρες μεταξύ δύο ημερομηνιών.</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/09/21/17011.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/09/21/17011.aspx</id><published>2006-09-21T17:42:00Z</published><updated>2006-09-21T17:42:00Z</updated><content type="html">&lt;P&gt;Παρακάτω θέλω να σας παρουσιάσω μια UDF η οποία μας επιστρέφει τόν αριθμό τών εργασίμων ημερών μεταξύ δύο ημερομηνιών.&lt;/P&gt;
&lt;P&gt;Βήμα 1.&lt;/P&gt;
&lt;P&gt;Δημιουργία ενός πίνακα στον οποίο εισάγουμε της Επίσημες αργίες όχι (Σάββατα-Κυριακές)&lt;/P&gt;
&lt;P&gt;CREATE TABLE Public_Holidays &lt;BR&gt;&amp;nbsp;( &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pubHoliday datetime NOT NULL&lt;BR&gt;&amp;nbsp;)&lt;/P&gt;
&lt;P&gt;go&lt;/P&gt;
&lt;P&gt;insert into Public_Holidays values('2006-10-28')&lt;/P&gt;
&lt;P&gt;insert into Public_Holidays values('2006-12-25')&amp;nbsp; &lt;/P&gt;
&lt;P&gt;κ.λ.π.&lt;/P&gt;
&lt;P&gt;Βήμα 2&lt;/P&gt;
&lt;P&gt;Δημιουργία της UDF&lt;/P&gt;
&lt;P&gt;CREATE FUNCTION fn_Wrk_days_Between (@FromDay datetime, @UntilDay datetime)&lt;BR&gt;RETURNS int&lt;BR&gt;AS&lt;BR&gt;BEGIN&lt;BR&gt;&amp;nbsp;&lt;BR&gt;declare @day1 datetime,@day2 datetime,@tmpday datetime,@day int,@count int,@polaplasiastis int &lt;/P&gt;
&lt;P&gt;/* &lt;BR&gt;&amp;nbsp;Έλεγχος άν η ημερομηνία από είναι μεγαλύτερη από την ημερομηνία έως &lt;BR&gt;&amp;nbsp;Αν η ημερομηνία από είναι μικρότερη από την έως περνάμε ανάποδα της παραμέτρους&lt;BR&gt;&amp;nbsp;και δηλώνουμε τον πολλαπλασιαστή μέ -1 έτσι ώστε να μας επιστραφούν ή ημέρες εργασίας αρνητικά.&lt;BR&gt;*/&lt;BR&gt;if @FromDay &amp;lt; @UntilDay&lt;BR&gt;&amp;nbsp;Begin&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set @day1 = CONVERT(datetime ,(CONVERT(char(10),@FromDay,102)),102 ) &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set @day2 = CONVERT(datetime ,(CONVERT(char(10),@UntilDay,102)),102 ) &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set @polaplasiastis=1&lt;BR&gt;&amp;nbsp;End&lt;BR&gt;Else&lt;BR&gt;&amp;nbsp;Begin&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set @day2 = CONVERT(datetime ,(CONVERT(char(10),@FromDay,102)),102 ) &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set @day1 = CONVERT(datetime ,(CONVERT(char(10),@UntilDay,102)),102 ) &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set @polaplasiastis=-1&lt;BR&gt;&amp;nbsp;End&lt;/P&gt;
&lt;P&gt;set @tmpday = @day1 &lt;BR&gt;set @count = 0 &lt;/P&gt;
&lt;P&gt;/* Εκτέλεση μέχρι η προσωρινή ημερομηνία γίνει ίση μέ την day2 */ &lt;BR&gt;while ( datediff(dd,@tmpday,@day2) &amp;gt;= 0) &lt;BR&gt;begin &lt;BR&gt;Select @day = Datepart(dw,@tmpday) &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Αν δέν είναι Σάββατο και Κυριακή */ &lt;BR&gt;if (@day != 1 AND @day != 7) &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Αν δέν βρίσκεται στον πίνακα Αργιών */&lt;BR&gt;&amp;nbsp;if not exists(Select * From Public_Holidays where pubHoliday= @tmpday)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Αύξηση της @tmpday ανά μία(1) */ &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Select @count = @count + 1 &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;Select @tmpday = Dateadd(dd,1,@tmpday) &lt;BR&gt;end &lt;/P&gt;
&lt;P&gt;/* Επιστροφή ημερών εργασίας */&lt;/P&gt;
&lt;P&gt;Return @count * @polaplasiastis&lt;BR&gt;END&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;Βήμα 3&lt;/P&gt;
&lt;P&gt;Επαλήθευση της UDF&lt;/P&gt;
&lt;P&gt;select dbo.fn_Wrk_days_Between('2006-10-23','2006-10-29')&lt;/P&gt;
&lt;P&gt;----------- &lt;BR&gt;5&lt;/P&gt;
&lt;P&gt;select dbo.fn_Wrk_days_Between('2006-12-25','2006-12-31')&lt;/P&gt;
&lt;P&gt;----------- &lt;BR&gt;4&lt;/P&gt;
&lt;P&gt;Εύρεση εργασίμων ημερών όταν η ημερομηνία από είναι μεγαλύτερη από την έως&lt;/P&gt;
&lt;P&gt;select dbo.fn_Wrk_days_Between('2006-12-25','2006-12-18')&lt;/P&gt;
&lt;P&gt;----------- &lt;BR&gt;-5&lt;/P&gt;
&lt;P&gt;Όπως βλέπουμε πράγματι μας επιστρέφονται οι εργάσιμες μέρες στό εύρος πού ζητήσαμε.&lt;/P&gt;
&lt;P&gt;Ελπίζω το παραπάνω κομμάτι κώδικα νά σας βοηθήσει .&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=17011" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term="MS SQL" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/MS+SQL/default.aspx" /></entry><entry><title>Πώς μπορούμε να ενώσουμε σέ ένα query τα αποτελέσματα μίας sp μέ ένα πίνακα.</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/09/18/16828.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/09/18/16828.aspx</id><published>2006-09-18T10:19:00Z</published><updated>2006-09-18T10:19:00Z</updated><content type="html">&lt;P&gt;Πολλές φορές ίσως θα θέλαμε νά πάρουμε τα αποτελέσματα μιάς sp και να τα ενώσουμε μέ κάποιο πίνακα της βάσης μας.Παρακάτω παραθέτω ένα απλό παράδειγμα&lt;/P&gt;
&lt;P&gt;use pubs&lt;/P&gt;
&lt;P&gt;go&lt;/P&gt;
&lt;P&gt;EXEC sp_serveroption 'serverName', 'data access', true&lt;/P&gt;
&lt;P&gt;Αντικαθιστούμε το serverName μέ το όνομα του Server μας.&lt;/P&gt;
&lt;P&gt;Κατόπιν βλέπουμε την σύνταξη του query .&lt;/P&gt;
&lt;P&gt;SELECT *&lt;BR&gt;FROM authors&amp;nbsp;a JOIN openquery([ACUMEN], 'pubs..byroyalty 50') b&lt;BR&gt;ON a.au_id = b.au_id&lt;/P&gt;
&lt;P&gt;Νομίζω ότι είναι ένα αρκετά εύκολο και κατατοπιστικό παράδειγμα.&lt;/P&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=16828" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term="MS SQL" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/MS+SQL/default.aspx" /></entry><entry><title>Αυτόματη εκτέλεση μιας εφαρμογής κατά την έναρξη τών WINDOWS</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/08/31/16168.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/08/31/16168.aspx</id><published>2006-08-31T15:26:00Z</published><updated>2006-08-31T15:26:00Z</updated><content type="html">&lt;P&gt;Παρακάτω παραθέτω μία μέθοδο η οποία εάν εκτελεστεί μία φορά μέσα από την εφαρμογή τότε η εφαρμογή ουσιαστικά γίνεται autoRun όταν ξεκινάμε τά Windows&lt;/P&gt;
&lt;P&gt;Αρχικά στά Reference πρέπει να δηλώσουμε το Microsoft.VisualBasic.Compatibility&lt;/P&gt;&lt;FONT color=#0000ff size=2&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Imports&lt;/FONT&gt;&lt;FONT size=2&gt; Microsoft.Win32&lt;/P&gt;&lt;FONT color=#0000ff size=2&gt;
&lt;P&gt;Module&lt;/FONT&gt;&amp;nbsp;AutoRun&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Public&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Sub&lt;/FONT&gt;&lt;FONT size=2&gt; AddInRun()&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Dim&lt;/FONT&gt;&lt;FONT size=2&gt; Value &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;String&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Dim&lt;/FONT&gt;&lt;FONT size=2&gt; RegKey &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; RegistryKey = Registry.LocalMachine.CreateSubKey("Software\Microsoft\Windows\CurrentVersion\Run")&lt;/P&gt;
&lt;P&gt;Value = VB6.GetPath &amp;amp; "\" &amp;amp; VB6.GetEXEName() &amp;amp; ".EXE"&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;RegKey.SetValue("MyApplication", Value)&lt;/P&gt;
&lt;P&gt;RegKey.Close()&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;End&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Sub&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;
&lt;P&gt;End&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Module&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff size=2&gt;&amp;nbsp;&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=16168" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term=".NET" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/.NET/default.aspx" /></entry><entry><title>Procedure η οποία κάνει enable  και disable τα Foreign Keys σέ μια βάση.</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/08/30/16132.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/08/30/16132.aspx</id><published>2006-08-30T16:40:00Z</published><updated>2006-08-30T16:40:00Z</updated><content type="html">&lt;P&gt;CREATE PROC fk_disable_enable_sp @mode char(8)&lt;BR&gt;AS&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; BEGIN &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DECLARE @tblname sysname, @constraintname sysname, @execstr varchar(8000)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DECLARE fk_cur CURSOR FOR &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SELECT '[' + table_name + ']' ,constraint_name&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FROM&amp;nbsp;&amp;nbsp; information_schema.constraint_table_usage&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WHERE&amp;nbsp;&amp;nbsp; lower(substring (constraint_name,1,2)) = 'fk'&lt;BR&gt;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OPEN fk_cur &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FETCH fk_cur INTO @tblname, @constraintname&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WHILE (@@fetch_status = 0) &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BEGIN &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SET @execstr = 'alter TABLE ' + @tblname + ' ' + @mode + ' CONSTRAINT ' + @constraintname&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PRINT (@execstr)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EXEC (@execstr)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FETCH fk_cur INTO @tblname, @constraintname&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; END &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CLOSE fk_cur &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DEALLOCATE fk_cur&lt;BR&gt;end&lt;BR&gt;go&lt;/P&gt;
&lt;P&gt;----Τρόπος κλήσης της sp&lt;/P&gt;
&lt;P&gt;---Για να κάνουμε disable τα FK&lt;BR&gt;exec fk_disable_enable_sp 'nocheck'&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;---Για να κάνουμε enable τα FK&lt;BR&gt;exec fk_disable_enable_sp 'check'&lt;/P&gt;
&lt;P&gt;Βέβαια χρειάζεται προσοχή στην χρήση τις παραπάνω sp .Ειδικα όταν ένας administrator θέλει να την χρησιμοποιήσει δέν πρέπει να υπάρχουν ενεργοί χρήστες στην εφαρμογή που χρησιμοποιεί την βάση.&lt;/P&gt;
&lt;P&gt;Ο λόγως δημιουργίας αυτής της sp είναι για λόγους maintanance από τον administrator .&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=16132" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term="MS SQL" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/MS+SQL/default.aspx" /></entry><entry><title>Δημιουργία custom Shape Form</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/05/03/12277.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/05/03/12277.aspx</id><published>2006-05-03T18:36:00Z</published><updated>2006-05-03T18:36:00Z</updated><content type="html">&lt;P&gt;Στο .NET με πολύ εύκολο τρόπο μπορούμε να δημιουργήσουμε δικά μας Skin για της φόρμες μας&lt;/P&gt;
&lt;P&gt;Εδώ Βλέπουμε πώς είναι η κλασική Windows Form&lt;/P&gt;
&lt;P&gt;&lt;IMG alt="" hspace=0 src="http://www.dotnetzone.gr/cs/photos/imanoussakis/images/12274/original.aspx" align=baseline border=0&gt;&lt;/P&gt;
&lt;P&gt;Παρακάτω Βλέπουμε πώς μπορεί νά είναι η δικιά μας φόρμα&lt;/P&gt;
&lt;P&gt;&lt;IMG alt="" hspace=0 src="http://www.dotnetzone.gr/cs/photos/imanoussakis/images/12276/original.aspx" align=baseline border=0&gt;&lt;/P&gt;
&lt;P&gt;Πώς γίνεται τώρα αυτό.&lt;/P&gt;
&lt;P&gt;Έχουμε φτιάξει ένα image πού έχει την εμφάνιση πού θέλουμε νά έχει η φόρμα μας και το χρησιμοποιούμε&amp;nbsp; ώς BackroundImage .της φόρμας μας (Form1).&lt;/P&gt;
&lt;P&gt;Κατόπιν χρησιμοπούμε τον παρακάτω κώδικα&lt;/P&gt;&lt;FONT size=2&gt;
&lt;P&gt;#&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Region&lt;/FONT&gt;&lt;FONT size=2&gt; "API Declarations"&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;nbsp;&amp;nbsp; Private&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Declare&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Sub&lt;/FONT&gt;&lt;FONT size=2&gt; ReleaseCapture &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Lib&lt;/FONT&gt;&lt;FONT size=2&gt; "user32" ()&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Private&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Declare&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Sub&lt;/FONT&gt;&lt;FONT size=2&gt; SendMessage &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Lib&lt;/FONT&gt;&lt;FONT size=2&gt; "user32" &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Alias&lt;/FONT&gt;&lt;FONT size=2&gt; "SendMessageA" (&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; hWnd &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Integer&lt;/FONT&gt;&lt;FONT size=2&gt;, &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; wMsg &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Integer&lt;/FONT&gt;&lt;FONT size=2&gt;, &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; wParam &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Integer&lt;/FONT&gt;&lt;FONT size=2&gt;, &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; lParam &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Integer&lt;/FONT&gt;&lt;FONT size=2&gt;)&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Private&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Const&lt;/FONT&gt;&lt;FONT size=2&gt; WM_NCLBUTTONDOWN &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Integer&lt;/FONT&gt;&lt;FONT size=2&gt; = &amp;amp;HA1&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Private&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Const&lt;/FONT&gt;&lt;FONT size=2&gt; HTCAPTION &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Integer&lt;/FONT&gt;&lt;FONT size=2&gt; = 2&lt;/P&gt;
&lt;P&gt;#&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;End&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Region&lt;/FONT&gt;&lt;/P&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;'Για νά μετακινηθεί η φόρμα&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;&lt;FONT color=#000000&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Private&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Sub&lt;/FONT&gt;&lt;FONT size=2&gt; frmMain_MouseDown(&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; sender &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Object&lt;/FONT&gt;&lt;FONT size=2&gt;, &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; e &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; System.Windows.Forms.MouseEventArgs) &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Handles&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;MyBase&lt;/FONT&gt;&lt;FONT size=2&gt;.MouseDown&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;If&lt;/FONT&gt;&lt;FONT size=2&gt; e.Button = MouseButtons.Left &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Then&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ReleaseCapture()&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SendMessage(&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/FONT&gt;&lt;FONT size=2&gt;.Handle.ToInt32, WM_NCLBUTTONDOWN, HTCAPTION, 0&amp;amp;)&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;End&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;If&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;End&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Sub&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt;Τοποθετούμε ένα pictureBox στην φόρμα μας και βάζουμε τον παρακάτω κώδικα&lt;/FONT&gt;&lt;/P&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Private&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Sub&lt;/FONT&gt;&lt;FONT size=2&gt; PictureBox1_Click(&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; sender &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; System.Object, &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; e &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; System.EventArgs) &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Handles&lt;/FONT&gt;&lt;FONT size=2&gt; PictureBox1.Click&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;'Το picturebox τοποθετείται πάνω από το κουμπί κλεισίματος που έχει σχεδιαστεί στην εικόνα&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;'το backcolor property δηλώνεται ώς transparent&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/FONT&gt;&lt;FONT size=2&gt;.Dispose()&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;End&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Sub&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;'Κατόπιν βάζουμε στο paint Event τον παρακάτω κώδικα&lt;/FONT&gt;&lt;/P&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;&lt;FONT color=#000000&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Private&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Sub&lt;/FONT&gt;&lt;FONT size=2&gt; frmMain_Paint(&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; sender &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Object&lt;/FONT&gt;&lt;FONT size=2&gt;, &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; e &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; System.Windows.Forms.PaintEventArgs) &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Handles&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;MyBase&lt;/FONT&gt;&lt;FONT size=2&gt;.Paint&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Dim&lt;/FONT&gt;&lt;FONT size=2&gt; img &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; Bitmap = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/FONT&gt;&lt;FONT size=2&gt;.BackgroundImage&lt;/P&gt;
&lt;P&gt;img.MakeTransparent(img.GetPixel(0, 0))&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;End&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Sub&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt;Μπορούμε βέβαια νά αλλάζουμε δυναμικά το skin της φόρμας μας έχοντας άλλες εικόνες μέ το σχήμα της φόρμα που θέλουμε φορτόνωντας την εικόνα που θέλουμε κάθε φορά από ένα file που την&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;έχουμε βάλει .&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;π.χ. &lt;FONT face="Courier New"&gt;&lt;FONT color=#0000ff&gt;Dim&lt;/FONT&gt; img &lt;FONT color=#0000ff&gt;As&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;New&lt;/FONT&gt; Bitmap("&lt;I&gt;filename&lt;/I&gt;") αλλαγή στο Paint Event&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=12277" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term=".NET" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/.NET/default.aspx" /></entry><entry><title>Επέκταση δυνατοτήτων ενός ComboBox αυτόματο γέμισμα κατα την πληκρολόγηση από το Items Collection</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/04/02/11470.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/04/02/11470.aspx</id><published>2006-04-02T17:43:00Z</published><updated>2006-04-02T17:43:00Z</updated><content type="html">&lt;P&gt;Το πρώτο βήμα που πρέπει να κάνουμε είναι να&amp;nbsp;κάνουμε add ένα User Control&amp;nbsp;στην εφαρμογή μας .Ας το ονομάσουμε &lt;FONT size=2&gt;myCombo.vb&lt;/P&gt;&lt;/FONT&gt;
&lt;P&gt;Κατόπιν μέσα στον κώδικα του user control αντικαθιστούμε το &lt;FONT size=2&gt;&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Inherits&lt;/FONT&gt;&lt;FONT size=2&gt; System.Windows.Forms.UserControl μέ&amp;nbsp; &lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;Inherits&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;System.Windows.Forms.ComboBox&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;Θα χρησιμοποιήσουμε δύο μεθόδους της βασικής κλάσης του combobox την &lt;FONT color=#0000ff size=2&gt;MyBase&lt;/FONT&gt;&lt;FONT size=2&gt;.KeyUp και την &lt;FONT color=#0000ff size=2&gt;MyBase&lt;/FONT&gt;&lt;FONT size=2&gt;.Leave &lt;/P&gt;&lt;/FONT&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;Οπότε ο κώδικας έχει ως εξής&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff size=2&gt;
&lt;P&gt;Public&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Class&lt;/FONT&gt;&lt;FONT size=2&gt; myCombo&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Inherits&lt;/FONT&gt;&lt;FONT size=2&gt; System.Windows.Forms.ComboBox&lt;/FONT&gt;&lt;/P&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Private&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Sub&lt;/FONT&gt;&lt;FONT size=2&gt; myCombo_KeyUp(&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; sender &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Object&lt;/FONT&gt;&lt;FONT size=2&gt;, &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; e &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; System.Windows.Forms.KeyEventArgs) &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Handles&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;MyBase&lt;/FONT&gt;&lt;FONT size=2&gt;.KeyUp&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Dim&lt;/FONT&gt;&lt;FONT size=2&gt; Typed &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;String&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;'Το πληκτρολογηθέν κείμενο&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Dim&lt;/FONT&gt;&lt;FONT size=2&gt; FoundIndex &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Integer&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;'Θέση του κειμένου στό Items Collection&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Dim&lt;/FONT&gt;&lt;FONT size=2&gt; FoundItem &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Object&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;'Το αντικείμενο που βρέθηκε στο Items Collection&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Dim&lt;/FONT&gt;&lt;FONT size=2&gt; FoundText &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;String&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;'Το κείμενο του αντικειμένου&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Dim&lt;/FONT&gt;&lt;FONT size=2&gt; AppendText &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;String&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;'Το κείμενο που βρίσκεται μετά το σημείο του πληκτρολογηθέντος κειμένου&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;nbsp; Select&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Case&lt;/FONT&gt;&lt;FONT size=2&gt; e.KeyCode&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;nbsp;&amp;nbsp; Case&lt;/FONT&gt;&lt;FONT size=2&gt; Keys.Back, Keys.Left, Keys.Right, Keys.Up, Keys.Down, Keys.Delete, Keys.CapsLock, Keys.Shift, Keys.Home, Keys.ShiftKey&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Return&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;nbsp; End&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Select&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&amp;nbsp; Typed = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/FONT&gt;&lt;FONT size=2&gt;.Text&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;nbsp; If&lt;/FONT&gt;&lt;FONT size=2&gt; Trim(Typed) = "" &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Then&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Return&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;nbsp; End&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;If&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&amp;nbsp;FoundIndex = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/FONT&gt;&lt;FONT size=2&gt;.FindString(Typed) &lt;FONT color=#006400&gt;'Θέση του πληκτρολογηθέντος κειμένου μέσα στο Items Collection&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;If&lt;/FONT&gt;&lt;FONT size=2&gt; FoundIndex &amp;gt;= 0 &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Then&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;FoundItem = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/FONT&gt;&lt;FONT size=2&gt;.Items(FoundIndex) &lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;'Αντικείμενο μέσα στο Items Collection&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;FoundText = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/FONT&gt;&lt;FONT size=2&gt;.GetItemText(FoundItem) &lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;'Κείμενο του αντικειμένου &lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;AppendText = FoundText.Substring(Typed.Length) &lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;'Κείμενο μετά από το σημείο του μέχρι τώρα πληκτρολογηθέντος&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/FONT&gt;&lt;FONT size=2&gt;.Text = Typed &amp;amp; AppendText &lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;'Δημιουργία κειμένου&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/FONT&gt;&lt;FONT size=2&gt;.SelectionStart = Typed.Length &lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;'Θέση από όπου θα συνεχισθεί η πληκτρολόγηση&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/FONT&gt;&lt;FONT size=2&gt;.SelectionLength = AppendText.Length &lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;'Επιλογή όλων των χαρακτήρων μετά την θέση της τελευταίας πληκτρολόγησης&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;End&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;If&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;End&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Sub&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Private&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Sub&lt;/FONT&gt;&lt;FONT size=2&gt; myCombo_Leave(&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; sender &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Object&lt;/FONT&gt;&lt;FONT size=2&gt;, &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; e &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; System.EventArgs) &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Handles&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;MyBase&lt;/FONT&gt;&lt;FONT size=2&gt;.Leave&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Dim&lt;/FONT&gt;&lt;FONT size=2&gt; FoundIndex &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Integer&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;FoundIndex = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/FONT&gt;&lt;FONT size=2&gt;.FindStringExact(&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/FONT&gt;&lt;FONT size=2&gt;.Text) &lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;'Ακριβής εύρεση στην θέση του Items Collection&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/FONT&gt;&lt;FONT size=2&gt;.SelectedIndex = -1&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/FONT&gt;&lt;FONT size=2&gt;.SelectedIndex = FoundIndex &lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;'Επιλογή θέσης στο Items Collection&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;End&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Sub&lt;/P&gt;
&lt;P&gt;End&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Class&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#000000&gt;Κατόπιν το προσαρμοσμένο combobox μπορούμε να το χρησιμοιποιήσουμε στις φόρμες της εφαρμογής μας έχοντας και αυτή την δυνατότητα.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#000000&gt;Βέβαια υπάρχουν πολλά έτοιμα τέτοιου τύπου controls στην αγορά μέ απείρως περισσότερη λειτουργικότητα αλλά κοστίζουν.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#000000&gt;Υ.Γ. Για VS2005 επειδή δέν το έχω δουλέψει δέν ξέρω αν την παραπάνω λειτουργικότητα την έχει από μονο του το Windows.Forms.ComboBox&lt;/FONT&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=11470" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term=".NET" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/.NET/default.aspx" /></entry><entry><title>IE AUTOMATATION</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/03/29/11336.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/03/29/11336.aspx</id><published>2006-03-30T02:27:00Z</published><updated>2006-03-30T02:27:00Z</updated><content type="html">&lt;P&gt;Πώς μπορούμε νά σηκώσουμε τον IE μέσα από την εφαρμογή&lt;/P&gt;
&lt;P&gt;&lt;IMG alt="" hspace=0 src="http://www.dotnetzone.gr/cs/photos/imanoussakis/images/11333/original.aspx" align=baseline border=0&gt;&lt;/P&gt;
&lt;P&gt;ο κώδικας είναι στό συνημμένο αρχείο στο παρακάτω link.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.dotnetzone.gr/cs/forums/11335/ShowPost.aspx"&gt;http://www.dotnetzone.gr/cs/forums/11335/ShowPost.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Αλήθεια Σωτήρη - Μάνο&amp;nbsp;γιατί δέν μπορώ να επισυνάψω σέ μια δημοσίευση κάποιο αρχείο?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=11336" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term=".NET" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/.NET/default.aspx" /></entry><entry><title>Δωρεάν Βιβλίο για VB2005</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/03/29/11316.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/03/29/11316.aspx</id><published>2006-03-29T22:46:00Z</published><updated>2006-03-29T22:46:00Z</updated><content type="html">&lt;P&gt;Έπεσα σ'αυτό το link του MSDN. Μπορείτε να το κατεβάσετε δωρεάν&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.dotnetzone.gr/cs/photos/imanoussakis/images/11325/original.aspx"&gt;&lt;/A&gt;&lt;IMG alt="" hspace=0 src="http://www.dotnetzone.gr/cs/photos/imanoussakis/images/11325/original.aspx" align=baseline border=0&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://msdn.microsoft.com/vbasic/learning/introtovb2005/"&gt;http://msdn.microsoft.com/vbasic/learning/introtovb2005/&lt;/A&gt;&lt;/P&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=11316" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term=".NET" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/.NET/default.aspx" /></entry><entry><title>Progress bar και διαχείριση των χρωμάτων</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/03/29/11315.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/03/29/11315.aspx</id><published>2006-03-29T22:22:00Z</published><updated>2006-03-29T22:22:00Z</updated><content type="html">&lt;P&gt;Στο παρακάτω κομμάτι μπορούμε να δούμε πώς μπορούμε να αλλάξουμε το backcolor και barcolor ενός progressbar.&lt;/P&gt;
&lt;P&gt;Στην Form1 βάζουμε&lt;BR&gt;Ένα ColorDialogProgressbar=ColorDialogProgressbar1 , button=buttonBackColor ,button=buttonForeColor ,ProgressBar=progressbar1&lt;/P&gt;
&lt;P&gt;Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As IntPtr, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer&lt;/P&gt;
&lt;P&gt;'Δήλωση σταθερών&lt;BR&gt;Const _BARCOLOR = &amp;amp;H409&lt;BR&gt;Const _BKCOLOR = &amp;amp;H2001&lt;/P&gt;
&lt;P&gt;Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load&lt;BR&gt;&amp;nbsp;progressbar1.Value = 5&lt;BR&gt;&amp;nbsp;progressbar1.Maximum = 10&lt;BR&gt;&amp;nbsp;ColorDialogProgressbar1.FullOpen = True&lt;BR&gt;End Sub&lt;/P&gt;
&lt;P&gt;' Events των Buttons&lt;BR&gt;Private Sub buttonBackColor_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles buttonBackColor.Click&lt;BR&gt;&amp;nbsp;If ColorDialogProgressbar1.ShowDialog() = DialogResult.OK Then&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PostMessage(progressbar1.Handle, _BKCOLOR, 0, ColorTranslator.ToOle(ColorDialogProgressbar1.Color))&lt;BR&gt;&amp;nbsp;End If&lt;/P&gt;
&lt;P&gt;End Sub&lt;BR&gt;Private Sub buttonForeColor_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles buttonForeColor.Click&lt;BR&gt;&amp;nbsp;If ColorDialogProgressbar1.ShowDialog() = DialogResult.OK Then&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PostMessage(progressbar1.Handle, _BARCOLOR, 0, ColorTranslator.ToOle(ColorDialogProgressbar1.Color))&lt;BR&gt;&amp;nbsp;End If&lt;BR&gt;End Sub&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Το παραπάνω αφορά progressBar για VS2002&amp;nbsp; σε VS2005 δεν έχω δεί το progressbar πως δουλεύει.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Παναγιώτη δέν ξέρω γιατί δέν μπορώ να βάλω σχόλιο για απάντηση στο σχόλιο που έκανες αλλά όπως αναφέρω παραπάνω το εργαλείο που έχω και χρησιμοποιώ είναι&amp;nbsp; το VS2002 και σ'αυτό στό progressbar δέν υπάρχουν οι δύνατότητες που αναφέρεις&lt;/P&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=11315" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term=".NET" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/.NET/default.aspx" /></entry><entry><title>Εντολές VB6 και ανίστοιχες σε VB.NET</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/03/28/11247.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/03/28/11247.aspx</id><published>2006-03-28T17:04:00Z</published><updated>2006-03-28T17:04:00Z</updated><content type="html">&lt;P&gt;Παρακάτω βλέπουμε την αντιστοιχία και την χρήση&lt;BR&gt;&amp;nbsp;VB 6 Εντολών&amp;nbsp; σέ VB.NT&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Len = .Length&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Mid = .SubString&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Replace = .Replace&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; InStr = .IndexOf&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; UCase = .ToUpper&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LCase = .ToLower&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Split = .Split&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;A) Παίρνοτας το μέγεθος ενός χαρακτήρα ή μιάς μεταβλητής&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Textbox1.Text.Length&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR&gt;O παραπάνω κώδικας μάς επιστρέφει το μέγεθος του χαρακτήρα πού βρίσκεται στο Textbox1&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim StrText As String&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim r As Integer&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; StrText = "Θα πάμε εκδρομή στο Ναύπλιο?"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; r = StrText.Length&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MsgBox(r)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;B) Παρακάτω βλέπουμε πώς εκτελείται η Mid function thw VB6 σέ .ΝΕΤ&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim r As String = "Γειά σου κόσμε"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; r = r.Substring(4)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MsgBox(r)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ή&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim r As String = "Γειά σου κόσμε"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; r = r.SubString(6, 3)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MsgBox(r)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;Γ) Εκτέλεση της Instr σέ .NET κώδικα&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim r As String = "Θα περάσουμε ένα υπέροχο Σαββατοκύριακο"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; r = r.IndexOf("υπέροχο")&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MsgBox(r)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Δ) Εκτέλεση της Replace σέ .ΝΕΤ&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim i As String = "Ήμουν βλάκας που σέ πίστεψα"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; i = i.Replace("βλάκας", "ηλίθιος")&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MsgBox(i)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;Ε) Δουλεύοντας της UCASE και LCASE της VB6 σε .ΝΕΤ&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim r as String&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; r = "Θα έρθω να σε πάρω στις 8 το βράδυ"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; r = r.ToUpper&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TextBox1.Text = r&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim r as String&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; r = "ΘΑ ΕΡΘΩ ΝΑ ΣΕ ΠΑΡΩ ΣΤΙΣ 8 ΤΟ ΒΡΑΔΥ"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; r = r.ToLower&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TextBox1.Text = r&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;ΣΤ) Δημιουργία arrays μέ την Split&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim i As String = "κειμενο1;κειμενο2;κειμενο3;κειμενο4"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim a() As String&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim j As Integer&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; a = i.Split(";")&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; For j = 0 To a.GetUpperBound(0)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MsgBox(a(j))&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Next&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;&lt;/P&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=11247" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term=".NET" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/.NET/default.aspx" /></entry><entry><title>Διαγραφή άδειων φακέλλων ενός Directory</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/03/28/11243.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/03/28/11243.aspx</id><published>2006-03-28T16:14:00Z</published><updated>2006-03-28T16:14:00Z</updated><content type="html">&lt;FONT color=#0000ff&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;Πώς μπορούμε να διαγράψουμε άδειους φακέλους .&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;Imports&lt;/FONT&gt; System.IO&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff&gt;Public&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;Sub&lt;/FONT&gt; DelEmptyFolders(&lt;FONT color=#0000ff&gt;ByVal&lt;/FONT&gt; DirPath &lt;FONT color=#0000ff&gt;As&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;String&lt;/FONT&gt;)&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff&gt;Dim&lt;/FONT&gt; SubDirs() &lt;FONT color=#0000ff&gt;As&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;String&lt;/FONT&gt; = Directory.GetDirectories(DirPath)&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff&gt;Dim&lt;/FONT&gt; strDir &lt;FONT color=#0000ff&gt;As&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;String&lt;/P&gt;&lt;/FONT&gt;
&lt;P&gt;&lt;FONT color=#0000ff&gt;For&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;Each&lt;/FONT&gt; strDir &lt;FONT color=#0000ff&gt;In&lt;/FONT&gt; SubDirs&lt;/P&gt;
&lt;P&gt;DelEmptyFolders(strDir)&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff&gt;Next&lt;/P&gt;&lt;/FONT&gt;
&lt;P&gt;&lt;FONT color=#0000ff&gt;If&lt;/FONT&gt; Directory.GetFiles(DirPath).Length + Directory.GetDirectories(DirPath).Length = 0 &lt;FONT color=#0000ff&gt;Then&lt;/P&gt;&lt;/FONT&gt;
&lt;P&gt;Directory.Delete(DirPath)&lt;/P&gt;
&lt;P&gt;Console.WriteLine("Διαγραφή φακέλου: " &amp;amp; DirPath)&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff&gt;End&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;If&lt;/P&gt;&lt;/FONT&gt;
&lt;P&gt;&lt;FONT color=#0000ff&gt;End&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;Sub&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#000000&gt;Οπότε μπορούμε να κάνουμε κλήση της DelEmptyFolders μεθόδου π.χ. DelEmptyFolders ("C:\")&amp;nbsp; για να διαγραφούν όλοι οι άδειοι φάκελλοι στό σύστημα&lt;/FONT&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=11243" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term=".NET" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/.NET/default.aspx" /></entry><entry><title>Πρόβλημα μέ Database</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/03/26/11165.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/03/26/11165.aspx</id><published>2006-03-26T20:15:00Z</published><updated>2006-03-26T20:15:00Z</updated><content type="html">&lt;P&gt;Επειδή πρίν από κάποιο διάστημα είχα ένα πρόβλημα μέ μιά Database σε ένα pc που είχε κτυπήσει ο δίσκος και μπόρεσα και έσωσα το mdf από την βάση αλλά είχα πρόβλημα στο attach της database έθεσα το πρόβλημα στο dotnetzone καί ΄μπόρεσα να βρώ την λύση μέσα από αυτό.&lt;/P&gt;
&lt;P&gt;Σας παραθέτω το link που είχε γίνει η σχετική συζήτηση τυχόν και βρεθεί και κάποιος άλλος σ'αυτή την θέση.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.dotnetzone.gr/cs/forums/8927/ShowPost.aspx"&gt;http://www.dotnetzone.gr/cs/forums/8927/ShowPost.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Ευχαριστώ τον raPhaeL για την βοήθειά του&lt;/P&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=11165" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term="MS SQL" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/MS+SQL/default.aspx" /></entry><entry><title>Πώς μπορούμε ένα adodb.recordset να το μεταφέρουμε σε ένα Dataset</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/03/23/11015.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/03/23/11015.aspx</id><published>2006-03-23T22:40:00Z</published><updated>2006-03-23T22:40:00Z</updated><content type="html">&lt;P&gt;&lt;FONT color=#0000ff size=2&gt;Imports&lt;/FONT&gt;&lt;FONT size=2&gt; System.Data.OleDb&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff size=2&gt;Imports&lt;/FONT&gt;&lt;FONT size=2&gt; ADODB&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;
&lt;P&gt;Public&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Class&lt;/FONT&gt;&lt;FONT size=2&gt; Form1&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Inherits&lt;/FONT&gt;&lt;FONT size=2&gt; System.Windows.Forms.Form&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Private&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Sub&lt;/FONT&gt;&lt;FONT size=2&gt; Form1_Load(&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; sender &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; System.Object, &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; e &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; System.EventArgs) &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Handles&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;MyBase&lt;/FONT&gt;&lt;FONT size=2&gt;.Load&lt;/P&gt;
&lt;P&gt;AdoDBRecToDs("myServerName", "pubs")&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;End&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Sub&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Private&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Function&lt;/FONT&gt;&lt;FONT size=2&gt; AdoDBRecToDs(&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; Server &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;String&lt;/FONT&gt;&lt;FONT size=2&gt;, &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; DbName &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;String&lt;/FONT&gt;&lt;FONT size=2&gt;)&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Dim&lt;/FONT&gt;&lt;FONT size=2&gt; cnn &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; Connection = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;New&lt;/FONT&gt;&lt;FONT size=2&gt; ADODB.Connection()&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Dim&lt;/FONT&gt;&lt;FONT size=2&gt; adors &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; Recordset = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;New&lt;/FONT&gt;&lt;FONT size=2&gt; ADODB.Recordset()&lt;/P&gt;
&lt;P&gt;cnn.open("PROVIDER=SQLOLEDB;DATA SOURCE=" &amp;amp; Server &amp;amp; ";" &amp;amp; _&lt;/P&gt;
&lt;P&gt;"INITIAL CATALOG=" &amp;amp; DbName &amp;amp; ";INTEGRATED SECURITY=SSPI;")&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#006400&gt;&amp;nbsp;'Δημιουργία&amp;nbsp;recordset--&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#006400&gt;'Δήλωση οποιουδήποτε πίνακα στην βάση&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Dim&lt;/FONT&gt;&lt;FONT size=2&gt; sql &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;String&lt;/FONT&gt;&lt;FONT size=2&gt; = "select * from authors"&lt;/P&gt;
&lt;P&gt;adors.open(sql, cnn, CursorTypeEnum.adOpenForwardOnly, LockTypeEnum.adLockReadOnly, 0)&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Dim&lt;/FONT&gt;&lt;FONT size=2&gt; da &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;New&lt;/FONT&gt;&lt;FONT size=2&gt; OleDbDataAdapter()&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Dim&lt;/FONT&gt;&lt;FONT size=2&gt; ds &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;New&lt;/FONT&gt;&lt;FONT size=2&gt; DataSet()&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#006400&gt;'Μεταφορά του recordset στο Dataset&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;da.Fill(ds, adors, "authors")&lt;/P&gt;
&lt;P&gt;'Γέμισμα ενός Grid&lt;/P&gt;
&lt;P&gt;grd.DataSource = ds.Tables("authors")&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#006400&gt;'Τερματισμός σύνδεσης&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;cnn.Close()&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;End&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Function&lt;/P&gt;
&lt;P&gt;End&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Class&lt;/P&gt;&lt;/FONT&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=11015" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term=".NET" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/.NET/default.aspx" /></entry><entry><title>Πώς μπορούμε να δούμε άν η Εφαρογή μας ήδη τρέχει σε κάποιο προηγούμενο process</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/03/23/11012.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/03/23/11012.aspx</id><published>2006-03-23T22:13:00Z</published><updated>2006-03-23T22:13:00Z</updated><content type="html">&lt;P&gt;&lt;FONT color=#000000&gt;Ο παρακάτω κώδικας μάς δείχνει άν η εφαρμογή μας ήδη τρέχει σε κάποιο προηγούμενο process&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff&gt;Imports&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#008000&gt; &lt;/FONT&gt;&lt;FONT color=#000000&gt;System.Runtime.InteropServices&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;BR&gt;&lt;FONT color=#0000ff&gt;Public&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Const&lt;/FONT&gt;&lt;FONT size=2&gt; ERROR_ALREADY_EXISTS &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Integer&lt;/FONT&gt;&lt;FONT size=2&gt; = 183&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;BR&gt;Public&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Declare&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Function&lt;/FONT&gt;&lt;FONT size=2&gt; CreateMutexA &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Lib&lt;/FONT&gt;&lt;FONT size=2&gt; "Kernel32.dll" (&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; lpSecurityAttributes &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Integer&lt;/FONT&gt;&lt;FONT size=2&gt;, &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; bInitialOwner &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Boolean&lt;/FONT&gt;&lt;FONT size=2&gt;, &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; lpName &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;String&lt;/FONT&gt;&lt;FONT size=2&gt;) &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Integer&lt;BR&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Public&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Declare&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Function&lt;/FONT&gt;&lt;FONT size=2&gt; GetLastError &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Lib&lt;/FONT&gt;&lt;FONT size=2&gt; "Kernel32.dll" () &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Integer&lt;BR&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Public&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Function&lt;/FONT&gt;&lt;FONT size=2&gt; ProcIsRunning() &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Boolean&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; '&lt;FONT color=#006400&gt;Προσπάθεια δημιουργίας ενός&amp;nbsp;Default Mutex&amp;nbsp;το οποίο ανήκει στο process&lt;/FONT&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;'Το&amp;nbsp;&amp;nbsp;&lt;FONT color=#006400&gt;MyApplication&lt;/FONT&gt; μπορεί να αντικατασταθεί μέ το όνομα της εφαρμογής .&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT size=2&gt;CreateMutexA(0, &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;True&lt;/FONT&gt;&lt;FONT size=2&gt;, "MyApplication")&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Return&lt;/FONT&gt;&lt;FONT size=2&gt; (GetLastError() = ERROR_ALREADY_EXISTS)&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;End&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Function&lt;/FONT&gt;&lt;/P&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=11012" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term=".NET" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/.NET/default.aspx" /></entry><entry><title>Upgrade στο σχήμα της βάσης μας σέ νέο Version για SQL2000</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/02/23/10025.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/02/23/10025.aspx</id><published>2006-02-23T17:30:00Z</published><updated>2006-02-23T17:30:00Z</updated><content type="html">&lt;P&gt;&lt;FONT color=#000000&gt;Στο συγκεκριμμένο θέμα θα δούμε πώς μπορούμε νά κάνουμε upgrade του σχήματος της βάσης μασ σέ νέο version ακόμα και όταν το version που είναι εγκατεστημμένο είναι πολύ παλαιότερο και δέν θελουμε να τρέξουμε όλα τά προηγούμενα patches που μπορεί νά υπάρχουν.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;Ας υποθέσουμε ότι έχουμε ένα πινακα στην βάση μας όπως παρακάτω.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;myTable&lt;BR&gt;(&lt;BR&gt;&amp;nbsp;columnA INT not null,&lt;BR&gt;&amp;nbsp;columnB varchar(10) not null,&lt;BR&gt;&amp;nbsp;columnC varchar(60) null&lt;BR&gt;&amp;nbsp;columnD varchar(20) null&lt;BR&gt;&amp;nbsp;columnE float default(0)&lt;BR&gt;)&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;και θέλουμε τώρα νά τον κάνουμε upgrade στην νέα version &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;myTable&lt;BR&gt;(&lt;BR&gt;&amp;nbsp;columnA INT not null,&lt;BR&gt;&amp;nbsp;columnB varchar(10) not null,&lt;BR&gt;&amp;nbsp;columnC varchar(60) null&lt;BR&gt;&amp;nbsp;columnD varchar(20) null&lt;BR&gt;&amp;nbsp;columnE float default(0)&lt;BR&gt;&amp;nbsp;columnF smallint default(0),&lt;BR&gt;&amp;nbsp;columnG numeric(28,2) default(0)&lt;BR&gt;)&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;σίγουρα θά μπορούσαμε νά τρέξουμε ένα Alter statement και αυτό νά πραγματοποιηθεί.Αλλά η column columnF έχει δημιουργηθεί σέ προηγούμενο version της εφαρμογής μας το οποίο και δέν έχει εγκατασταθεί.Πώς θα μπορούσαμε να κάνουμε την νέα εγκατάσταση χωρίς να χρειάζεται να τρέξουμε το προηγούμενο set εγκατάστασης?&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;Λοιπόν έχουμε καταρχάς δημιουργήσει στην βάση μας την παρακάτω Function&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;create function dbo.DynSqlInsert&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;( &lt;BR&gt;&amp;nbsp;&amp;nbsp; @tblName varchar(255),&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; @type smallint --0 Δημιουργία Insert Statment,1 Δυμιουργία Select Stament&lt;BR&gt;&amp;nbsp;&amp;nbsp;)&lt;BR&gt;returns varchar(8000)&lt;BR&gt;as&lt;BR&gt;begin&lt;BR&gt;&amp;nbsp;declare @objId int,@retString&amp;nbsp; varchar(8000),@name varchar(255)&lt;BR&gt;&amp;nbsp;select @retString=''&lt;BR&gt;&amp;nbsp;select @objId=id from sysobjects where&amp;nbsp;&lt;A href="mailto:name=@tblName"&gt;name=@tblName&lt;/A&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;DECLARE cur1 cursor for&lt;BR&gt;select name from syscolumns where &lt;/FONT&gt;&lt;A href="mailto:id=@objId"&gt;&lt;FONT color=#000000&gt;id=@objId&lt;/FONT&gt;&lt;/A&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;open cur1&lt;BR&gt;fetch next from cur1 into @name&lt;BR&gt;&amp;nbsp; while @@fetch_status=0&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; begin&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set @retString=@retString+','+@name&lt;BR&gt;fetch next from cur1 into @name&lt;BR&gt;end&lt;BR&gt;close cur1&lt;BR&gt;deallocate cur1&lt;BR&gt;if @type=0&lt;BR&gt;begin&lt;BR&gt;select @retString='insert into&amp;nbsp;TMP_' + @tblName +&amp;nbsp;' &lt;/FONT&gt;&lt;FONT color=#000000&gt;('+substring(@retString,2,len(@retString))+')'&lt;BR&gt;end&lt;BR&gt;else&lt;BR&gt;begin&lt;BR&gt;select @retString='select '+substring(@retString,2,len(@retString))+' from &lt;/FONT&gt;&lt;A href="mailto:'+@tblName+'"&gt;&lt;FONT color=#000000&gt;'+@tblName+'&lt;/FONT&gt;&lt;/A&gt;&lt;FONT color=#000000&gt; TABLOCKX'&amp;nbsp; ---΄΄Κλειδώνουμε τον πίνακα&lt;BR&gt;end&lt;BR&gt;return @retString&lt;BR&gt;end&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;Τώρα μπορούμε να προχωρήσουμε στο επόμενο στάδιο.Δημιουργούμε τον πίνακα που θέλουμε μέ το πρόθεμα TMP_ όπως παρακάτω&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;Create table TMP_myTable&lt;BR&gt;(&lt;BR&gt;&amp;nbsp;columnA INT not null,&lt;BR&gt;&amp;nbsp;columnB varchar(10) not null,&lt;BR&gt;&amp;nbsp;columnC varchar(60) null&lt;BR&gt;&amp;nbsp;columnD varchar(20) null&lt;BR&gt;&amp;nbsp;columnE float default(0)&lt;BR&gt;&amp;nbsp;columnF smallint default(0),&lt;BR&gt;&amp;nbsp;columnG numeric(28,2) default(0)&lt;BR&gt;)&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;Κατόπιν δηλώνουμε δύο μεταβλητές @str1 varcahr(8000),@str2 varchar(8000) και τους περνάμε της τιμές που γυρίζουν κατά περίπτωση από την παραπάνω function&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;declare @str1 varchar(8000),@str2 varchar(8000)&lt;BR&gt;&amp;nbsp; select @str1=dbo.DynSqlInsert('myTable',0),@str2=dbo.DynSqlInsert('myTable',1)&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;τά στοιχεία που γυρίζουν ένα τα παρακάτω&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;insert into TMP_myTable (columnA,columnB,columnC,columnD,columnE) &lt;BR&gt;select columnA,columnB,columnC,columnD,columnE from myTable TABLOCKX&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;οπότε μπορούμε νά δημιουργήσουμε το insert Statment των Data στον νέο πίνακα εκτελώντας&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;exec &lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;U&gt;(@str1+' &lt;/U&gt;&lt;/FONT&gt;&lt;A href="mailto:'+@str2"&gt;&lt;FONT color=#0000ff&gt;'+@str2&lt;/FONT&gt;&lt;/A&gt;&lt;FONT color=#000000&gt;)&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;Κατόπιν κάνουμε drop τον παλιό πίνακα και rename τον καινούργιο&lt;/P&gt;
&lt;P&gt;DROP TABLE myTable&lt;/P&gt;
&lt;P&gt;EXECUTE sp_rename N'TMP_myTable', N'myTable', 'OBJECT'&lt;/P&gt;
&lt;P&gt;Έτσι λοιπόν μπορούμε σέ ένα αρχείο νά έχουμε δημιουργήσει το τελευταίο σχήμα της βάσης μας και απο τον client να γίνει το upgrade.&lt;/P&gt;
&lt;P&gt;Σημείωση :&lt;/P&gt;
&lt;P&gt;Σε SQL2005 δέν έχει δοκιμαστεί.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=10025" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term="MS SQL" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/MS+SQL/default.aspx" /></entry><entry><title>Ένα trick για να μήν εμφανίζεται η Horizontal Scroll bar σέ TreeView όταν αυτό γεμμίζετε και είναι σε κατάσταση hidden</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/02/16/9777.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/02/16/9777.aspx</id><published>2006-02-16T19:38:00Z</published><updated>2006-02-16T19:38:00Z</updated><content type="html">&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Private&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Sub&lt;/FONT&gt;&lt;FONT size=2&gt; TreeView_VisibleChanged(&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; sender &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Object&lt;/FONT&gt;&lt;FONT size=2&gt;, &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;ByVal&lt;/FONT&gt;&lt;FONT size=2&gt; e &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;FONT size=2&gt; System.EventArgs) &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Handles&lt;/FONT&gt;&lt;FONT size=2&gt; TreeView1.VisibleChanged&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;'Με αυτό τον τρόπο αποφεύγουμε την εμφάνιση της horizontal scrollbar όταν το&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;treeview&amp;nbsp;γεμίζετε ενώ η κατάσταση του είναι hidden.&lt;/P&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;'Δηλώνουμε το&amp;nbsp; width σε 0, εφόσον το&amp;nbsp;treeview&amp;nbsp;είναι docked, τότε αυτό θά πάρει το μέγεθος που πρέπει αλλά το μέγεθος του&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;scroll bars σ' αυτό θά επαναυπολογιστεί&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;CType&lt;/FONT&gt;&lt;FONT size=2&gt;(sender, TreeView).Width = 0&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;End&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;Sub&lt;/P&gt;&lt;/FONT&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=9777" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term=".NET" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/.NET/default.aspx" /></entry><entry><title>Διαχωρισμός Delimited String στον SQL</title><link rel="alternate" type="text/html" href="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/02/11/9534.aspx" /><id>https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/2006/02/11/9534.aspx</id><published>2006-02-11T18:47:00Z</published><updated>2006-02-11T18:47:00Z</updated><content type="html">&lt;P&gt;Πολλές φορές μπορεί νά έχουμε ένα πεδίο varchar του οποίου τάσ στοιχεία είναι χωρισμένα μέ Delimited και θέλουμε νά τα διαχωρίσουμε.&lt;/P&gt;
&lt;P&gt;Αυτό μπορεί νά γίνει βέβαια από τον client μέσω VB.NET η C#.Αλλά πώς μπορούμε νά το κάνουμε μέσα από τον SQL όταν το συγκεκριμμένο πεδίο θέλουμε νά το χρησιμοποιήσουμε μέσα σε μιά Stored Procedure&amp;nbsp;στον MS SQL.&lt;/P&gt;
&lt;P&gt;Παρακάτω σας παραθέτω μία function με την οποία μπορούμε να το πετύχουμε.&lt;/P&gt;
&lt;P&gt;&lt;span style="color: Black;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;if&lt;/span&gt; &lt;span style="color: Silver;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;exists&lt;/span&gt; (&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;select&lt;/span&gt; * &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;from&lt;/span&gt; dbo.&lt;span style="color: LawnGreen;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;sysobjects&lt;/span&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;where&lt;/span&gt; id = &lt;span style="color: Fuchsia;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;object_id&lt;/span&gt;(N&lt;span style="color: Red;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;'[dbo].[FnBreakDelimited]'&lt;/span&gt;) &lt;span style="color: Silver;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;and&lt;/span&gt; xtype &lt;span style="color: Silver;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;in&lt;/span&gt; (N&lt;span style="color: Red;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;'FN'&lt;/span&gt;, N&lt;span style="color: Red;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;'IF'&lt;/span&gt;, N&lt;span style="color: Red;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;'TF'&lt;/span&gt;))&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;drop&lt;/span&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;function&lt;/span&gt; [dbo].[FnBreakDelimited]&lt;br /&gt;GO&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;SET&lt;/span&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;QUOTED_IDENTIFIER&lt;/span&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;OFF&lt;/span&gt; &lt;br /&gt;GO&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;SET&lt;/span&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;ANSI_NULLS&lt;/span&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;OFF&lt;/span&gt; &lt;br /&gt;GO&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;create&lt;/span&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;function&lt;/span&gt; dbo.FnBreakDelimited(@StringToBreak &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;varchar&lt;/span&gt;(255),@Delimiter &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;varchar&lt;/span&gt;(1))&lt;br /&gt;returns &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;int&lt;/span&gt;&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;as&lt;/span&gt;&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;BEGIN&lt;/span&gt;&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;declare&lt;/span&gt; @pos &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;int&lt;/span&gt;&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;select&lt;/span&gt; @pos=&lt;span style="color: Fuchsia;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;charindex&lt;/span&gt;(@Delimiter,@StringToBreak)&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;return&lt;/span&gt; @pos&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;END&lt;/span&gt;&lt;br /&gt;GO&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;SET&lt;/span&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;QUOTED_IDENTIFIER&lt;/span&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;OFF&lt;/span&gt; &lt;br /&gt;GO&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;SET&lt;/span&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;ANSI_NULLS&lt;/span&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;ON&lt;/span&gt; &lt;br /&gt;GO&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;Χρησιμοποίηση της παραπάνω function&lt;/P&gt;
&lt;P&gt;Ας υποθέσουμε πώς έχουμε μιά varchar μεταβλητή &lt;/P&gt;
&lt;P&gt;&lt;span style="color: Black;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;Declare&lt;/span&gt; @vStr &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;varchar&lt;/span&gt;(80)&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;Επίσης μία varchar μεταβλητή πού δημιουργεί άνα δυναμικό string που θα χρησιμοποιηθεί μέσα σέ ένα δυναμικό SQL &lt;/P&gt;
&lt;P&gt;&lt;span style="color: Black;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt; &lt;br /&gt;&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;Declare&lt;/span&gt; @DynSQL &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;varchar&lt;/span&gt;(255),@pos &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;int&lt;/span&gt;&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;select&lt;/span&gt; @vStr=&lt;span style="color: Red;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;'1,2,3,4,5,6'&lt;/span&gt;,@DynSQL=&lt;span style="color: Red;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;' IN ('&lt;/span&gt;&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;while&lt;/span&gt; @vStr&amp;lt;&amp;gt;&lt;span style="color: Red;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;''&lt;/span&gt;&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;begin&lt;/span&gt;&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;set&lt;/span&gt; @pos=master.dbo.FnBreakDelimited(@vStr,&lt;span style="color: Red;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;','&lt;/span&gt;)&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;if&lt;/span&gt; @pos&amp;gt;0&lt;br /&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;begin&lt;/span&gt;&lt;br /&gt;  &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;set&lt;/span&gt; @DynSQL=@DynSQL+&lt;span style="color: Fuchsia;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;substring&lt;/span&gt;(@vStr,1,@pos-1)+&lt;span style="color: Red;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;','&lt;/span&gt;&lt;br /&gt;  &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;set&lt;/span&gt; @vStr=&lt;span style="color: Fuchsia;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;substring&lt;/span&gt;(@vStr,@pos+1,&lt;span style="color: Fuchsia;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;len&lt;/span&gt;(@vStr)) &lt;br /&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;end&lt;/span&gt;&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;else&lt;/span&gt;&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;if&lt;/span&gt; @pos=0&lt;br /&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;begin&lt;/span&gt;&lt;br /&gt;  &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;set&lt;/span&gt; @DynSQL=@DynSQL+@vStr&lt;br /&gt;  &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;set&lt;/span&gt; @vStr=&lt;span style="color: Red;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;''&lt;/span&gt;&lt;br /&gt; &lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;end&lt;/span&gt;&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;end&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;set&lt;/span&gt; @DynSQL=&lt;span style="color: Fuchsia;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;substring&lt;/span&gt;(@DynSQL,1,&lt;span style="color: Fuchsia;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;len&lt;/span&gt;(@DynSQL)-1)+&lt;span style="color: Red;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;')'&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: Teal;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;--Επιστροφή varchar για δημιουργία SQL &lt;/span&gt;&lt;br /&gt;&lt;span style="color: Blue;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;select&lt;/span&gt; @DynSQL&lt;br /&gt;&lt;br /&gt;&lt;span style="color: Teal;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;--Αποτέλεσμα&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: Silver;background-color: Transparent;font-family: Lucida Console;font-size: 11px;font-weight: normal;"&gt;IN&lt;/span&gt; (1,2,3,4,5,6)&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;Στην εκτέλεση της Function όπως βλέπετε χησιμοποίησα την master Database αυτό το έκανα γιατί εκεί την δημιούργησα για να μπορώ νά έχω πρόσβαση σ'αυτή απο οποιαδήποτε άλλη βάση και να μήν χρειάζεται νά την δημιουργώ σέ κάθε βάση που θά την χρειαστώ&lt;/P&gt;
&lt;P&gt;Αυτά προς το παρόν&lt;/P&gt;&lt;img src="https://www.dotnetzone.gr:443/cs/aggbug.aspx?PostID=9534" width="1" height="1"&gt;</content><author><name>imanos</name><uri>https://www.dotnetzone.gr:443/cs/members/imanos.aspx</uri></author><category term="MS SQL" scheme="https://www.dotnetzone.gr:443/cs/blogs/imanoussakis/archive/tags/MS+SQL/default.aspx" /></entry></feed>