1 Συνδέστε στη βάση δεδομένων σας , και δημιουργήσετε ένα νέο αρχείο SQL 2
Πληκτρολογήστε την ακόλουθη SQL : . .
CREATE FUNCTION [ dbo ] [ CleanHTML ] Ξενοδοχεία
(
@ DirtyText varchar ( MAX )
)
ΕΠΙΣΤΡΕΦΕΙ varchar ( MAX )
AS
BEGIN
ΔΗΛΩΝΟΥΝ @ BeginPos int
ΔΗΛΩΝΟΥΝ @ EndPos int
ΔΗΛΩΝΟΥΝ @ Len int
- Αντικαταστήστε την οντότητα HTML και με το « & » χαρακτήρα ( αυτό πρέπει να γίνει πρώτα , όπως
- '&' θα μπορούσε να κωδικοποιηθεί ως διπλό '&' )
SET @ BeginPos = CHARINDEX ( '&' , @ DirtyText )
SET @ @ EndPos = BeginPos + 4
SET @ Len = ( @ EndPos - @ BeginPos ) + 1
ΕΝΩ ( @ BeginPos > 0 και @ EndPos > 0 και @ Len > 0 ) BEGIN
SET @ DirtyText = STUFF ( @ DirtyText , BeginPos @ @ Μήκος , '&' )
SET @ BeginPos = CHARINDEX ( '&' , @ DirtyText )
SET @ @ EndPos = BeginPos + 4
SET @ Len = ( @ EndPos - @ BeginPos ) + 1
END
- Αντικαταστήστε την οντότητα HTML <με το « <» χαρακτήρα
SET @ BeginPos = CHARINDEX ( '<' , @ DirtyText )
SET @ @ EndPos = BeginPos + 3
SET @ Len = ( @ EndPos - @ BeginPos ) + 1
ΕΝΩ ( @ BeginPos > 0 και @ EndPos > 0 και @ Len > 0 ) BEGIN
SET @ DirtyText = STUFF ( @ DirtyText , BeginPos @ @ Μήκος , ' )
SET @ BeginPos = CHARINDEX ( '<' , @ DirtyText )
SET @ @ EndPos = BeginPos + 3
SET @ Len = ( @ EndPos - @ BeginPos ) + 1
END
- Αντικαταστήστε την οντότητα HTML > με το χαρακτήρα '>'
SET @ BeginPos = CHARINDEX ( '>' @ DirtyText )
SET @ @ EndPos = BeginPos + 3
SET @ Len = ( @ EndPos - @ BeginPos ) + 1
ΕΝΩ ( @ BeginPos > 0 ΚΑΙ @ EndPos > 0 και @ Len > 0 ) BEGIN
SET @ DirtyText = STUFF ( @ DirtyText , BeginPos @ @ Μήκος , '>' )
SET @ BeginPos = CHARINDEX ( '>' , @ DirtyText )
SET @ @ EndPos = BeginPos + 3
SET @ Len = ( @ EndPos - @ BeginPos ) + 1
END
- Αντικαταστήστε την οντότητα HTML & με το « & » χαρακτήρα
SET @ BeginPos = CHARINDEX ( '&' , @ DirtyText )
SET @ @ EndPos = BeginPos + 4
SET @ Len = ( @ EndPos - @ BeginPos ) + 1
ΕΝΩ ( @ BeginPos > 0 και @ EndPos > 0 και @ Len > 0 ) BEGIN
SET @ DirtyText = STUFF ( @ DirtyText , BeginPos @ @ Μήκος , '&' )
SET @ BeginPos = CHARINDEX ( '&' , @ DirtyText )
SET @ EndPos = @ BeginPos + 4
SET @ Len = ( @ EndPos - @ BeginPos ) + 1
ΤΕΛΟΣ
- Αντικαταστήστε την οντότητα HTML με το χαρακτήρα ''
SET @ BeginPos = CHARINDEX ( '' , @ DirtyText )
SET @ @ EndPos = BeginPos + 5
SET @ Len = ( @ EndPos - @ BeginPos ) + 1
ΕΝΩ ( @ BeginPos > 0 και @ EndPos > 0 και @ Len > 0 ) BEGIN
SET @ DirtyText = STUFF ( @ DirtyText , BeginPos @ @ Μήκος » » )
SET @ BeginPos = CHARINDEX ( '' , @ DirtyText )
SET @ @ EndPos = BeginPos + 5
SET @ Len = ( @ EndPos - @ BeginPos ) + 1
END
- Αντικαταστήστε τις ετικέτες με αλλαγή γραμμής
SET @ BeginPos = CHARINDEX ( '' , @ DirtyText )
SET @ @ EndPos = BeginPos + 3
SET @ Len = ( @ EndPos - @ BeginPos ) + 1
ΕΝΩ ( @ BeginPos > 0 και @ EndPos > 0 και @ Len > 0 ) BEGIN
SET @ DirtyText = STUFF ( @ DirtyText , BeginPos @ @ Μήκος , CHAR ( 13 ) + CHAR ( 10 ) )
SET @ BeginPos = CHARINDEX ( '' , @ DirtyText )
SET @ @ EndPos = BeginPos + 3
SET @ Len = ( @ EndPos - @ BeginPos ) + 1
END
- Αντικαταστήστε τυχόν ετικέτες
με αλλαγή γραμμής
SET @ BeginPos = CHARINDEX ( «
» , @ DirtyText )
SET @ @ EndPos = BeginPos + 4
SET @ Len = ( @ EndPos - @ BeginPos ) + 1
ΕΝΩ ( @ BeginPos > 0 και @ EndPos > 0 και @ Len > 0 ) BEGIN
SET @ DirtyText = STUFF ( @ DirtyText , BeginPos @ @ Μήκος , « CHAR ( 13 ) + CHAR ( 10 ) ')
SET @ BeginPos = CHARINDEX ( «
» , @ DirtyText )
SET @ @ EndPos = BeginPos + 4
SET @ Len = ( @ EndPos - @ BeginPos ) + 1
END
- Αντικαταστήστε τυχόν ετικέτες />
SET @ BeginPos = CHARINDEX ( « />
SET @ @ EndPos = BeginPos + 5
SET @ Len = ( @ EndPos - @ BeginPos ) + 1
ΕΝΩ ( @ BeginPos > 0 και @ EndPos > 0 και @ Len > 0 ) BEGIN
SET @ DirtyText = STUFF ( @ DirtyText , BeginPos @ @ Μήκος , « CHAR ( 13 ) + CHAR ( 10 ) ')
SET @ BeginPos = CHARINDEX ( « />
SET @ @ EndPos = BeginPos + 5
SET @ Len = ( @ EndPos - @ BeginPos ) + 1
END
- Κατάργηση τίποτα μεταξύ SET @ BeginPos = CHARINDEX ( '<' , @ DirtyText ) SET @ EndPos = CHARINDEX ( '>' , @ DirtyText , CHARINDEX ( '<' , @ DirtyText ) ) SET @ Len = ( @ EndPos - @ BeginPos ) + 1 ΕΝΩ ( @ BeginPos > 0 και @ EndPos > 0 και @ Len > ? 0 ) BEGIN SET @ DirtyText = STUFF ( @ DirtyText , BeginPos @ @ Μήκος, '') SET @ BeginPos = CHARINDEX ( '<' , @ DirtyText ) SET @ EndPos = CHARINDEX ( '>' , @ DirtyText , CHARINDEX ( '<' , @ DirtyText ) ) SET @ Len = ( @ EndPos - @ BeginPos ) + 1 ΤΕΛΟΣ ΕΠΙΣΤΡΟΦΗΣ LTRIM ( RTRIM ( @ DirtyText ) ) ΤΕΛΟΣ Συντάξτε τη λειτουργία SQL . Εκτελέστε τη λειτουργία , και βεβαιωθείτε ότι επιστρέφει τα επιθυμητά αποτελέσματα . Για παράδειγμα : Επιλέξτε από dbo.CleanHTML ( «
εικόνων 3
4
Η
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα