Getting Byte[] data with MySQL -Cast(... AS BINARY)

I

ist

Hi,

I am trying to get (and transfer over ASP.NET) some encrypted data
from some MySQL fields. Since the data contains many unicode
characters, I tried to get the data as a series of ASCII values,
transfer those numeric values over ASP.NET. I had no problem doing
this on my local computer, by getting the field with "cast(field as
BINARY)" so that on ASP.NET I have a byte[] array.Then send every
field of array over ASP.Net.

However when I upload application to remote server, "cast(field as
BINARY)" returns field data as String type. I have tried many ways to
convert this string data to byte array, however data always become
corrupted. So I have to get data as a byte array directly from MySQL.

As I've said, I had no problem doing this on my local computer,
however, on my local computer I was connecting to same computer using
same driver (MySQL Odbc 3.51), so when I upload the ASP.NET page to
remote server, ONLY thing that is changing is location and -maybe-
ASP.NET version (I am sure both are ASP.NET 2 , maybe different
builds)

So, the bottom line is: I am trying to get MySQL data as byte[] type,
on local web server I have no problem, on remote web server
(connecting to SAME MySQL Server) I get data as String, instead of
Byte[]. How can I achieve same result on remote server?
 
C

Cowboy \(Gregory A. Beamer\)

First, let's step back. You are using encrypted data, which means you have
char > 255. This was a problem in traditional ASP, but should not be a
problem in ASP.NET, as strings are Unicode by default. I have not played
extensively with MySQL, so I cannot be completely sure, but I have done
extensive work with encryption in other databases, requiring no need to pull
as binary.

I would try pulling the string out straight rather than running from string
to byte[] and back to Unicode string.
 
I

ist

Hi,
I've 'played' with some MySQL connection properties (Character set,
collation etc.), and converted String data to byte array at ASP.NET
side ('played' here with some combinations too) and got a good result
for now. Thanks..



First, let's step back. You are using encrypted data, which means you have
char > 255. This was a problem in traditional ASP, but should not be a
problem in ASP.NET, as strings are Unicode by default. I have not played
extensively with MySQL, so I cannot be completely sure, but I have done
extensive work with encryption in other databases, requiring no need to pull
as binary.

I would try pulling the string out straight rather than running from string
to byte[] and back to Unicode string.

--
Gregory A. Beamer
MVP, MCP: +I, SE, SD, DBA

*************************************************
| Think outside the box!
|



I am trying to get (and transfer over ASP.NET) some encrypted data
from some MySQL fields. Since the data contains many unicode
characters, I tried to get the data as a series of ASCII values,
transfer those numeric values over ASP.NET. I had no problem doing
this on my local computer, by getting the field with "cast(field as
BINARY)" so that on ASP.NET I have a byte[] array.Then send every
field of array over ASP.Net.
However when I upload application to remote server, "cast(field as
BINARY)" returns field data as String type. I have tried many ways to
convert this string data to byte array, however data always become
corrupted. So I have to get data as a byte array directly from MySQL.
As I've said, I had no problem doing this on my local computer,
however, on my local computer I was connecting to same computer using
same driver (MySQL Odbc 3.51), so when I upload the ASP.NET page to
remote server, ONLY thing that is changing is location and -maybe-
ASP.NET version (I am sure both are ASP.NET 2 , maybe different
builds)
So, the bottom line is: I am trying to get MySQL data as byte[] type,
on local web server I have no problem, on remote web server
(connecting to SAME MySQL Server) I get data as String, instead of
Byte[]. How can I achieve same result on remote server?- Alýntýyý gizle -

- Alýntýyý göster -
 
C

Cowboy \(Gregory A. Beamer\)

Glad you found an answer that works. :)


Hi,
I've 'played' with some MySQL connection properties (Character set,
collation etc.), and converted String data to byte array at ASP.NET
side ('played' here with some combinations too) and got a good result
for now. Thanks..



First, let's step back. You are using encrypted data, which means you have
char > 255. This was a problem in traditional ASP, but should not be a
problem in ASP.NET, as strings are Unicode by default. I have not played
extensively with MySQL, so I cannot be completely sure, but I have done
extensive work with encryption in other databases, requiring no need to
pull
as binary.

I would try pulling the string out straight rather than running from
string
to byte[] and back to Unicode string.

"ist" <[email protected]>
wrote in message



I am trying to get (and transfer over ASP.NET) some encrypted data
from some MySQL fields. Since the data contains many unicode
characters, I tried to get the data as a series of ASCII values,
transfer those numeric values over ASP.NET. I had no problem doing
this on my local computer, by getting the field with "cast(field as
BINARY)" so that on ASP.NET I have a byte[] array.Then send every
field of array over ASP.Net.
However when I upload application to remote server, "cast(field as
BINARY)" returns field data as String type. I have tried many ways to
convert this string data to byte array, however data always become
corrupted. So I have to get data as a byte array directly from MySQL.
As I've said, I had no problem doing this on my local computer,
however, on my local computer I was connecting to same computer using
same driver (MySQL Odbc 3.51), so when I upload the ASP.NET page to
remote server, ONLY thing that is changing is location and -maybe-
ASP.NET version (I am sure both are ASP.NET 2 , maybe different
builds)
So, the bottom line is: I am trying to get MySQL data as byte[] type,
on local web server I have no problem, on remote web server
(connecting to SAME MySQL Server) I get data as String, instead of
Byte[]. How can I achieve same result on remote server?- Alýntýyý
gizle -

- Alýntýyý göster -
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,770
Messages
2,569,586
Members
45,097
Latest member
RayE496148
Top