Questione : carboni non stampabili puliti del tsql using il percorso del xml

Ciao tipi - il

I ha un mazzo di tabelle che hanno caratteri non stampabili in loro e devo ottenerlo. Qui è che cosa ho finora… che lavora grande pulire il roba difettoso. Fino a che non lo faccia funzionare ed ottenga il nome originale poichè un nome con un mazzo non di printables (incollerei ma ' non rivelerà) ed allora il nome pulito come “& del Johnson; L'azienda„ anziché “Johnson & Company„ come esso ha fatto in primo luogo. la dichiarazione prescelta del

My alla parte inferiore è di selezionare soltanto le annotazioni che hanno i carboni difettosi. (Userò quello per aggiornare le mie tabelle.) indizi del

Any quanto a che cosa sto facendo male/che non fa dove sto ottenendo questo? (Facendolo entrambi per SQL2005 e 2008)

Thanks!
class= > " libero " del
> " del codeSnippet " del class= del
class= " lineNumbers " del
class= del
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
class= " del id= " codeSnippet963048 del
; CON Num1 (n) COME (SELEZIONARE 1 UNIONE che TUTTE SELEZIONANO 1),
Num2 (n) COME (SELEZIONARE 1 A PARTIRE da Num1 COME X, Num1 COME Y),
Num3 (n) COME (SELEZIONARE 1 A PARTIRE da Num2 COME X, Num2 COME Y),
Num4 (n) COME (SELEZIONARE 1 A PARTIRE da Num3 COME X, Num3 COME Y),
Nums (n) COME (ROW_NUMBER PRESCELTO () SOPRA (ORDINE da n) FROM Num4),

CleanCTE
AS
(CompanyID PRESCELTO, CompanyName,
       GETTO ((CASO PRESCELTO QUANDO ASCII (SOTTOSTRINGA (CompanyName, n, 1))
                         FRA 0x00 E 0x1F 
                         O ASCII (SOTTOSTRINGA (CompanyName, n, 1)) FRA 0x80 E 0xBF
                    ALLORA ''
                    SOTTOSTRINGA ALTRA (CompanyName, n, 1)
               ESTREMITÀ + ''
        Dall'azienda COME B
        UNIRE Nums
          Sul <= LEN (CompanyName) di n
        DOVE B.CompanyID = A.CompanyID
        Ordine da Nums.N
        PER IL PERCORSO DI XML (''), IL TIPO) COME VARCHAR (256)) COME CleanName
 Dall'azienda COME A)

SELEZIONARE IL PRINCIPALE 100 o.CompanyName, CleanName
DA
	Cte di CleanCTE
UNIR
	Azienda o su o.CompanyID = cte.CompanyID
DOVE
	<> LEN (o.OperatorName) di LEN (CleanName)
class= del

Risposta : carboni non stampabili puliti del tsql using il percorso del xml

1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
; Con l'azienda As
(selezionare *, “operatore„ come OperatorName da (
 selezionare CompanyID=1, CompanyName=cast (“Johnson & Company„ come varchar (256)) unione tutta
 selezionare 2, “McDonalds„ unione che tutte selezionano 3, “Jim '' l'unione tutta di rimorchio di s„
 selezionare 4, “Wingdings„ + carbone (252) + '<> LEN (o.OperatorName)
Altre soluzioni  
 
programming4us programming4us