Solved

Finding Non-standard characters in a SQL Server table

Posted on 2009-04-02
6
308 Views
Last Modified: 2012-05-06
A bug in one of our import processes allowed non-standard characters (like Ö]¡]ÐÉ]¿)  to get imported into one of our tables.  The characters can appear at the end of a string of standard characters or they can appear in the middle of the string.   There may be only 1 non-standard character in the field, or multiple non-standard characters.  I'm not really sure which non-standard characters were included, so I can't just search for a particular character.  I need to find anything that's not A-Z or 0-9, and not a comma, apostrophe, number sign, bracket, parentheses, or other standard symbol in American English.

I need to find the records that are affected.  Is there a query I can run that will detect these non-standard characters?  I don't want to replace them yet, just to identify the affected records.
0
Comment
Question by:n f
  • 3
  • 3
6 Comments
 
LVL 143

Expert Comment

by:Guy Hengel [angelIII / a3]
ID: 24055663
this should do:
select * from yourtable
where yourfield like '%[^A-Za-z0-9]%'

Open in new window

0
 
LVL 1

Author Comment

by:n f
ID: 24060917
I tried angelll's code, but it returned records with no special characters as well as records with special characters.  Does '%[^A-Za-z0-9]%' include spaces?
0
 
LVL 1

Author Comment

by:n f
ID: 24060983
An example of some of the fields returned by angelll's code (there were many, many more)::

VALDOSTA�
ST JOHN'S
MT PEARL N
GRAND-M�RE QC G9T 2
TROIS-RIVI�RESQC G8T
NEW ALEXANDRIA
N HUNTINGDON
MT PLEASANT

Only
VALDOSTA�
GRAND-M�RE QC G9T 2
and
TROIS-RIVI�RESQC G8T
really have the special characters.

These three examples all have special characters "�".  I know those characters are in my table, but I need to find out if any others exist.
0
Microsoft Certification Exam 74-409

Veeam® is happy to provide the Microsoft community with a study guide prepared by MVP and MCT, Orin Thomas. This guide will take you through each of the exam objectives, helping you to prepare for and pass the examination.

 
LVL 143

Accepted Solution

by:
Guy Hengel [angelIII / a3] earned 500 total points
ID: 24060984
if spaces should be allowed, add the space in the expression.
if you need any other character, just add it.

select * from yourtable
where yourfield like '%[^A-Za-z0-9 ]%'

Open in new window

0
 
LVL 143

Expert Comment

by:Guy Hengel [angelIII / a3]
ID: 24060988
for example, single quotes:
select * from yourtable
where yourfield like '%[^A-Za-z0-9 '']%'

Open in new window

0
 
LVL 1

Author Closing Comment

by:n f
ID: 31566056
That did it!  Thanks!
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article will describe one method to parse a delimited string into a table of data.   Why would I do that you ask?  Let's say that you need to pass multiple parameters into a stored procedure to search for.  For our sake, we'll say that we wa…
In this article I will describe the Backup & Restore method as one possible migration process and I will add the extra tasks needed for an upgrade when and where is applied so it will cover all.
Email security requires an ever evolving service that stays up to date with counter-evolving threats. The Email Laundry perform Research and Development to ensure their email security service evolves faster than cyber criminals. We apply our Threat…
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …

830 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question