Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17


VB & MS SQL Server

Posted on 2002-03-05
Medium Priority
Last Modified: 2010-05-02

i am using VB as client.& SQL server as DB.
when i try to store this text "khdfkhsdkfh'sdfsdf'" in a varchar field i hit error "incorrect syntax near'sdfsdf'"

its bcos the single quote. but i need to store this value.
is it bcos the datatype is varchar???

Question by:chandua
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
LVL 70

Expert Comment

by:Éric Moreau
ID: 6843378
no it is because it includes a quote. you need to do something like:
strV = "khdfkhsdkfh'sdfsdf'"
sql = "insert into t1(field1) values('" & replace(strv,"'","''") & "')"
LVL 70

Expert Comment

by:Éric Moreau
ID: 6843388
and please maintain your other question:

Questions Asked 45
Last 10 Grades Given A A A A A B A A A B  
Question Grading Record 22 Answers Graded / 22 Answers Received

Accepted Solution

lmanapure earned 60 total points
ID: 6843426

The problem is because of the ' character in your string.

It happens once in a while that the application users enter a string with a ' character.

You can use the following function in your applications to get a valid SQL string.

Private Function GetValidSQLString(ByVal SourceString As Variant) As String
    If IsNull(SourceString) Then
        GetValidSQLString = ""
        GetValidSQLString = "'" & Replace(SourceString, "'", "''", , , vbTextCompare) & "'"
    End If
End Function

A way to call this function may be:
str = "khdfkhsdkfh'sdfsdf'"
str = GetValidSQLString(str)
This will set str value equal to 'khdfkhsdkfh''sdfsdf'''
and the expression will become:

Insert Into Table(columnname) Values('khdfkhsdkfh''sdfsdf''')
Use it like this
sSQL = "Insert Into TableName(ColumnName)"
sSQL = sSQL & "Values(" & GetValidSQLString(str) & ")"

Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.


Expert Comment

ID: 6861569
47 questions asked, only 22 closed.... ADMINISTRATION WILL BE CONTACTING YOU SHORTLY.
This question appears to have been abandoned. Your options are:
1. Accept a Comment As Answer (use the button next to the Expert's name).
2. Close the question if the information was not useful to you. You must tell the participants why you wish to do this, and allow for Expert response.
3. Ask Community Support to help split points between participating experts, or just comment here with details and we'll respond with the process.
4. Delete the question. Again, you must tell the other participants why you wish to do this.

For special handling needs, please post a zero point question in the link below, include the question QID/link.
Please click this Help Desk link for Member Guidelines, Member Agreement and the Question/Answer process:  Click you Member Profile to view your question history and keep them all current with updates as the collaboration effort continues.

To view your open questions, please click the following link(s) and update/finalize them all.

------------>  EXPERTS:  Please leave any comments regarding this question here on closing recommendations if this item remains inactive another three days.
Thank you everyone.
Moderator @ Experts Exchange

P.S.  For year 2000 questions, special attention is needed to ensure the first correct response is awarded, since they are not in the comment date order, but rather in Member ID order.
LVL 70

Expert Comment

by:Éric Moreau
ID: 6861631
points are going to me. I have answered first.

Expert Comment

ID: 6866965
Points for emoreau  this TA 20277209

It was the Asker who chose and graded/closed this.  Fixed in the above, please comment.

Moondancer - EE Moderator

Featured Post

[Webinar] Lessons on Recovering from Petya

Skyport is working hard to help customers recover from recent attacks, like the Petya worm. This work has brought to light some important lessons. New malware attacks like this can take down your entire environment. Learn from others mistakes on how to prevent Petya like worms.

Question has a verified solution.

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

Introduction While answering a recent question ( in the VB classic zone, I wrote some VB code in the (Office) VBA environment, rather than fire up my older PC.  I didn't post completely correct code o…
Background What I'm presenting in this article is the result of 2 conditions in my work area: We have a SQL Server production environment but no development or test environment; andWe have an MS Access front end using tables in SQL Server but we a…
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…
Suggested Courses

705 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