Member_2_1242703
asked on
Tilde in SQL & ASP.NET DataReader
I have a datareader bringing in information and assigning it to a label using the code below. Whenever it runs into a tilde (~) in one of the datasets, it chops it off and everything prior to it. How can I get around this?
Private Sub ReadNext()
Me.ResetDataReader()
If CType(Session.Item("reader"), Data.SqlClient.SqlDataReader).Read() Then
If Not CType(Session.Item("reader"), Data.SqlClient.SqlDataReader)("DESCRIPTION") Is DBNull.Value Then
Label4.Text = CType(Session.Item("reader"), Data.SqlClient.SqlDataReader)("DESCRIPTION").ToString
Else
Label4.Text = ""
End If
Private Sub ResetDataReader()
Dim myConn As New Data.SqlClient.SqlConnection(myConnString)
Dim mySelectQuery As String = "SELECT * FROM tblMain"
myCommand = New Data.SqlClient.SqlCommand(mySelectQuery, myConn)
myConn.Open()
myReader = myCommand.ExecuteReader
Session.Item("reader") = myReader
End Sub
ASKER
Yeah you're right I should have done it that way but either way that does not solve the problem I was asking about. It returns the exact same value either way. For example...
L/NUT,HEX M6,M6X1.0 ~ M6X1.0
returns
M6X1.0
L/NUT,HEX M6,M6X1.0 ~ M6X1.0
returns
M6X1.0
try this:
Private Sub ReadNext()
ResetDataReader()
end sub
Private Sub ResetDataReader()
Dim myConn As New Data.SqlClient.SqlConnection(myConnString)
Dim mySelectQuery As String = "SELECT m.*, replace(DESCRIPTION,'~','?') FROM tblMain m"
myCommand = New Data.SqlClient.SqlCommand(mySelectQuery, myConn)
myConn.Open()
myReader = myCommand.ExecuteReader
if myReader.read() then
If Not myReader("DESCRIPTION") Is DBNull.Value Then
Label4.Text = myReader("DESCRIPTION").ToString.replace('?','~')
Else
Label4.Text = ""
End If
End if
MyReaded.close()
myConn.Close()
End Sub
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Open in new window