String Validation
Feb 27, 2004I need to make sure that a string contains at least one number, at least one letter and has no repeating chars. Anyone done something similar? What's the best way to do it? Thanks.
View 14 RepliesI need to make sure that a string contains at least one number, at least one letter and has no repeating chars. Anyone done something similar? What's the best way to do it? Thanks.
View 14 RepliesIs there a way in TSQL to validate a string to ensure it has only numbers or letters (no special characters like @,%, etc)?
I want to write a function that validates a number that should only contain letters and numbers. The function should return 1 if valid 0 if not. If it contains anything other than 0-9 or A-Z or a-z then it should return 0.
Any ideas on how to do this in TSQL? I could do this in C# easily with regular expressions, but I don't want to use SQLCLR or any other external resource like that...just straight TSQL.
Thanks!
I need some suggestions on validating a string of text based on some business rules using T-SQL. I have a string similar to the following:
This is some text (1.00); this is some more (there's more text here) text (2.00); this is yet more text (1.10)
The above example illustrates a valid string. You'll notice the multiple sets of parens The parens that contain numbers must be followed by a semi-colon except for the last set of parens. Furthermore, any parens followed by a semi-colon must contain only numbers and not text. I can easily identify the positions in the string by using PATINDEX.
Get the closing paren not followed by a semi-colon, ignoring the last closing paren PATINDEX('%)[^;]', @string)
Get the closing paren followed by a semi-colon, ignoring the last closing paren PATINDEX('%);%', @string)
My question is, is there a way to quickly validate the data between the parens without visiting each character. This is SQL 2000 so using CLR regular expressions is out.
Thanks.
I am taking a five-digit zipcode from a database where it is stored as an int, and I would like to store it as a char(5).
I set my OLE DB source to pull from a proc as:
Code Snippet
SELECT
cust.CustomerID as CustomerID,
case
when cust.Zip > 99999 then Null
when cust.Zip < 0 then Null
else REPLICATE('0',5 - LEN(cast(cust.Zip as varchar(5))))
+ cast(cust.Zip as varchar(5))
end as CustomerZip
However, when I do that, SSIS sees the external column as a string of length 8000, and insists on giving me a truncation warning on validation.
I also tried bringing the Zip field in as an int and doing a data conversion in the SSIS data stream. This worked great until I added a Derived Column transform to do the REPLICATE function as above to add leading zeros to the zip code. Once I did that, SSIS decided that there was a chance of truncation again and started with the truncation warnings.
My derived column is:
Code Snippet
REPLICATE("0",5 - LEN(TRIM([CustomerZip]))) + TRIM([CustomerZip])
BTW - I don't think the TRIM() function is really necessary in the above, but I tried it out of desperation and it made no difference.
This is really starting to drive me nuts. Does anyone have any thoughts on how to convert an integer zipcode to a char(5) string with leading zeros without incurring these validation warnings?
TIA
- Steve
I am working on a query application, and I want to do syntax validation before I submit the dynamically sql to the database. The expression will include ANDs, ORs, IN, (,),>,<,etc. Anyone done this already? any code snippets?
Thanks!
Hi
I am running the following:
DECLARE @h uniqueidentifier --conversation handle
DECLARE @msg xml; --will hold the message
BEGIN DIALOG CONVERSATION @h
FROM SERVICE [ewx.co.za/Service/store001_ewx_sb_service]
TO SERVICE 'ewx.co.za/Service/ewx_sb_hub_service'
ON CONTRACT [ewx.co.za/Contract/ewx_Contract];
SET @msg = '<InventoryUpdate>
<TitleId>STORE001TEST1</TitleId>
<Quantity>7777</Quantity>
</InventoryUpdate>';
SEND ON CONVERSATION @h
MESSAGE TYPE [ewx.co.za/Message/ewx_sendmsg](@msg);
Now to test errors comming back on the aueue i sed to make the xml tags wrong, then the target would send a error back on the queue with xml validation failed (both queues have validation well_formed_xml). However now in testing i cannot even send the message i get an invalid xml error straight away, i am not sure why this is , i know the xml is not valid but the send used to work and i would get an erro rback, as the xml is validated by the ttarget, but this no longer works it ails strainght away, with no thing in any queue. What could be causing this ?
Thanx
I think I have read online a recommendation about not using XML VALIDATION in a production environment, due to performance reasons. Is it recommended using other that NONE validation in production, and is there available documentation for a scale that grades performance hits for various types of validations?
Thanks
Afternoon all,I want my SQL SP to do some validation on a form submit to do the following before committing to the table.If email address (txt.Email.Text) doesn't exist in the table, commit values.if email address (txt.Email.Text) does exist and option (radOptions.SelectedValue) equals 1, print message to say 'you're already subscribed'if email address (txt.Email.Text) does exist and option (radOptions.SelectedValue) equals 0, print message to say 'you're not subscribed'if email address (txt.Email.Text) does exist and option (radOptions.SelectedValue) equals 1 or 0, update row to 0 or 1 (depending on subscribe or unsubscribe - 1 = subscribed, 0 = unsubscribed) The simple SP is currently:ALTER procedure [dbo].[sp_customerSignups]@name varchar(50),@email varchar (50),@subscribed intasBEGININSERT INTO tblCustomerSignups(Name, EmailAddress, Subscribed)VALUES(@name, @email, @subscribed)END Does anyone have the correct syntax for this?Thanks,Brett
View 4 Replies View RelatedHi,
I have following XML-file and XML-schema:
<template xmlns="http://www.mycompany.com/xsd/PageTemplate">
...
</template>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.mycompany.com/xsd/PageTemplate" targetNamespace="http://www.mycompany.com/xsd/PageTemplate"><xs:element name="template"><xs:complexType>...</xs:complexType>
</xs:element></xs:schema>
When I create and query the XML file using LINQ, everything works just fine. I also get no compilation errors.
But when I try to add the XML file to a database-field of type xml(CONTENT dbo.Common7), I get following error:
XML Validation: Declaration not found for element 'http://www.mycompany.com/xsd/PageTemplate:template'. Location: /*:template[1] Any ideas? Thanks,Thomas
Hey all,
Quick question regarding validation!
I have a table of contact details containing the usual name, adresss etc fields.
I want to validate the fields Country and telephone together so that fopr example if country = 'UNITED KINGDOM' the telephone has to begin with +44 if it doesnt i want it to add the +44!
I can do this through writing a little program but just wanted to explore the possibility of doing this with SQL or functions already available with MSSQL Server
cheers
ed
i have two params..
@startdate datetime,@enddate datatime
1.what's the best way to validate them
2.Best way to check whether @startdate is less than @enddate
I am new to SQL SERVER,
Can anybody help me to write a procedure to validate a given string like
09461020(Y2K compliant date), I need to check wether this is a valida date or not??
0946 = should convert to 1946
10 = month
20 is the date.
If it is 20461020.....then year = 2046, month = 10 and day = 20..and it is valid.
procedure should return validate date or not ...return TRUE OR FALSE.
How can we validate email id in sql server 2005..
i use the following code...
if((len(@default_to_mail)-len(replace(@default_to_mail,' ','')))=0 and @default_to_mail like ('%@%.%'))
its not validating correctly...
can u give me any solution.
Thanks in advance.
cool...,
I'm sorry to repost this, but I didn't get an answer yet for this seemingly simple issue. I need to make sure that an email address has the @ symbol before I insert it from one table to another. Does anyone know the syntax? What I have that isn't working is -
select * from table where email charindex ('@',email) > 0
Guys,
I hope I will be able to get this.
I'm looking a cripts/code that will validate date in my form when the user key in date. The date has to be in the following format 00/00/0000 (month/ day/ year)
HELP
Thk
hi,
this is my table values:
select * from empmaster
emp.no fromdate todate
----------------------------------
E3/13/20074/7/2007
E4/13/20076/13/2007
i am going to pass some date for example 5/20/2007.
so i have to compare this 5/20/2007 which lies in between 3/13/20074/7/2007 or 4/13/20076/13/2007.if means i have to print not allowed other wise allowed. and the date should not be less(if 2/10/2007). like thi i have many from date and todate in my table. if i give 7/20/2007 means it should print allowed becos it doesnot falls in between any date o the emp.no=e. this should be depent on the emp.no also.
so please help me to do this.please show me query for this.or spc
Hi guys I am fairly new to t-sql. I am sure there are SPs or scripts that I can use to create a procedure that will do the data validation in the staging table...
Client send us data and often some of the records have bad values... what i have to create is a process that will check for those values and update a flag in the staging table for each column if the data is not valid....
Please help me out if you have something that can be used for this.
Thanks a lot help in advance.
I am having trouble with the SSIS wizard results. The connections to source and destination test good, but when I execute a task to copy all tables from a hosted OLEDB to a local SQL native connection, I get this error:
Error 0xc0202049: Data Flow Task: Failure inserting into the read-only column "eventID".
(SQL Server Import and Export Wizard)
Error 0xc0202045: Data Flow Task: Column metadata validation failed.
(SQL Server Import and Export Wizard)
Error 0xc004706b: Data Flow Task: "component "Destination - diary" (25)" failed validation and returned validation status "VS_ISBROKEN".
(SQL Server Import and Export Wizard)
Error 0xc004700c: Data Flow Task: One or more component failed validation.
(SQL Server Import and Export Wizard)
Error 0xc0024107: Data Flow Task: There were errors during task validation.
(SQL Server Import and Export Wizard)
The actual table that it is trying to write to is empty. What might I need to do, in order to correct the situation?
thanks!
Hi there,
I have a package that runs fine in BIDS, however fails when run in a job with the following error: "The Validate method must succeed and indicate the result using an "out" parameter".
The task it is failing on is a third party FTP task that uses expressions for the filesource and filedestination and username. I have set delay validation on for this task, yet it still seems that it is trying to validate it.
Any suggestions?
Thanks.
I have one data flow task which creating a database table (tempTable) and other task will migrate data from other database into this table. Now I add third task which will read the data from this tempTable. If tempTable is not in the database, then validation will failed. Is there a way to turn off validation at runtime.
In my case, my package running every night. I would like to delete this tempTable at end of package run. Now I have to pre create this temp table, and run package and leave the temptable around for the next run to pass validation problem.
Thanks!
Jun Fan
Hi,
I'm adding a field from a staging database into a mart database which is built using SSIS. I've added the field with relevant lookups (the field is called Business) but I am getting the following error from the Source Load Task:
Error 2 Validation error. DFT Load Vacancy: MI Stage Vacancy Source [1]: The output column "Business" (6336) on the non-error output has no corresponding output column on the error output. Vacancy.dtsx 0 0
The thing is, I've looked and it DOES have a corresponding output column on the error output. Is there something I'm missing here?
Thanks in advance.
Hi,
Anyone
can help me on this? I am using MS SQL 2005 Express Edition. When I am
installing my 3rd party software that needs to connect to the database,
i get this error . Thanks.
Validation failed:
1. No mdb connection.
2. No Microsoft SQL server connection.
3. Microsoft SQL Server collation is not valid.
4. Microsoft SQL server authentication is not valid.
Hello,
I have the following iif:
IIF(len(Fields!CustBirth.Value)<10,nothing,datediff(dateinterval.day, cdate(mid(Fields!CustBirth.Value,4,2)+"/"+left(...) + "/" + Right(...) )))
The thing that it is happening is that when i run a report without that CustBirth field i get an error stating that it cant convert the string "//" to date, of course it can't that is why i made the iif, how can i tell it to just try to execute the datediff when the field has the lenght bigger then 10 chars?
I have already installed SP2.
Thank you
We run the same package day in and day out. So we want to turn off validation, which consumes around 30% of the package run time. Since the data source and destinations are known to be correct, we dont need validation and want to save this unnecessary step every time.
How can we Execute without Validation?
Hi,
Anyone can help me on this? I am using MS SQL 2005 Express Edition. When I am installing my 3rd party software that needs to connect to the database, i get this error . Thanks.
Validation failed:
1. No mdb connection.
2. No Microsoft SQL server connection.
3. Microsoft SQL Server collation is not valid.
4. Microsoft SQL server authentication is not valid.
Hi
I created a XML SCHEMA and MESSAGE TYPE with VALIDATION = VALID_XML WITH SCHEMA COLLECTION.
I thought this would validate the message send with the schema. but when I try to send the message with a different xml, the message is send. there were no errors. Is there something I did not set?
thanks
P
Is it possible to create a server side or client side validation for parameter inputs? For example, I want a calender input to error when a user tries to put in a date past the current date time
Hi,
I have an XML file and it's XSD file, when I use an other tool (Stylus studio) the XML file is valide and weelformed. But in SSIS using XML task using the same XSD and XML I get a "False", so the XMl file is not valide.
Have you an idea obout this
thank you in advance
Being relatively new to SSIS, I'm looking for advice, or a best practice, regarding data validation before extracting the data for a transformation.
One of my project's require that certain data be validated in staging tables before it is loaded. The validations include checking for null values, verifying that a field is populated with apropriate values etc... The entire batch of data (good records and bad records) may be rejected depending on the validations.
I have a couple of different thoughts on how this could be handled...
Run a series of validation queries on the data before executing an SSIS package
Run some kind of validation transformation (does one exist or should I write a custom transformation?)
Place contraints on the target tables so that bad records error out on the load
Something else... I could be missing the completely obvious
#3 doesn't seem to viable as the entire load may be rejected if some of the data is bad...
Any thoughts?
Is it possible to avoid SSIS steps validation to be performed during execution of a package? It slow down execution time to much.
Thanks!
I need a help on the following situation ,
i have a set of 6 file which comes into my ftp folder , the name of the file would be same when a set arrives but with a different extension.
one of the validation i need to make is if i recieve the set of file then it process the package , if i have less then six file in it should move files to a failure location.
the challenge i have is i can have multiple sets of file at at given time in ftp location.
supppose the file i receive in first set would be 1A1.exa, 1A1. exb, 1A1. exc, 1A1.exd , 1A1. Exe , 1A1.Exf
the next set file would be 1A2.exa, 1A2. exb, 1A2. exc, 1A2.exd , 1A2. Exe , 1A2.Exf
please advise how can i achieve it , please advise
thank you
For the incoming data from a text file i want to check if the dates are valid...how can i do that?????
View 4 Replies View RelatedI need to turn off validation and I've seen some threads saying this is not possible but my situation has a twist.
A customer needs the package to connect to different modem dialup connections to connect to different servers (they use dialup for security reasons). We have written two VB script tasks at the beginning and end of a loop, with data flows in between. Before the loop the dialup connection info is read into a recordset along with Data Source connection information. The first script uses this information to dialup and the last script hangs up the connection. The problem is the package tries to validate the data connections and the package has not dialed up yet, so it fails.
We managed to confirm it works in a test environment by putting a break in the first script, manually VPNing into the test network (to allow validation of the data flow to work), and then manually disconnecting from VPN during the break. The script dials in and pumps the data. But this won't be an option in production.
So if anyone has figured out a way to turn off validation, great. Otherwise, any ideas to make this work? I was thinking about setting up a dummy connection that would be connected outside the package before running just for validation (and then the script would disconnect to begin, but I would prefer to handle all of this within SSIS.
Any help? While I see the point of validation it's a bummer that MSFT didn't put this in the hands of the user.
Thanks, Kayda