Showing posts with label latest. Show all posts
Showing posts with label latest. Show all posts

Friday, March 30, 2012

Problem saving/retrieving unicode characters NVARCHAR with unicode collation (java jdbc)

I'm connecting to a SQL Server 2005 database using the latest (beta) sql server driver (Microsoft SQL Server 2005 JDBC Driver 1.1 CTP June 2006) from within Java (Rational Application Developer).

The table in SQL Server database has collation Latin1_General_CI_AS and one of the columns is a NVARCHAR with collation Indic_General_90_CI_AS. This should be a Unicode only collation. However when storing for instance the following String:

€_£_ùúü?ùúü?_???????£????_???_??????_прстуф_????
... it is saved with ? for all unicode characters as follows (when looking in the database):
€_£_ùúü?ùúü?_???????£????_???_?_?_?

The above is not correct, since all unicode characters should still be visible. When inserting the same string directly into the sql server database (without using Java) the result is ok.

Also when trying to retrieve the results again it complains about the following error within Java:

Codepage 0 is not supported by the Java environment.

Hopefully somebody has an answer for this problem. When I alter the collation of the NVARCHAR column to be Latin1_General_CI_AS as well, the data can be stored and retrieved however then of course the unicode specific characters are lost and results into ? So in that case the output is as described above (ie €_£_ùúü?ùúü?_???????£????_???_?_?_?)

We would like to be able to persist and retrieve unicode characters in a SQL Server database using the correct JDBC Driver. We achieved this result already with an Oracle UTF8 database. But we need to be compliant with a SQL Server database as well. Please help.

Thanks in advance for your help.So far nobody replied on my question. unfortunately.
Please help me to sort out this problem.

Bottom line we just want to be able to save and retrieve Unicode characters in SQL server within our Java application. We want to do this by setting the NVARCHAR columns in all tables to a Unicode collation.

Please help.
Thanks.|||

Hugo,

Can you tell me whether you have sendStringParametersAsUnicode set to "false" in your connection properties?

Thank you,

--David Olix

JDBC Development

|||

Hi David,

Thanks for your reply. I can ensure that I didn't set the sendStringParametersAsUnicode to "false". This parameter is default set to "true" so I didn't change it in the connection properties.

I found out that the unicode Collation I used "Indic_General_90_CI_AS" had a Codepage 0 in my SQL Server 2005 installation. In fact all unicode only collations do have a codepage 0 if I check them all using the following command:

SELECT COLLATIONPROPERTY('Indic_General_90_CI_AS', 'CodePage') as CodePage

Is this perhaps related to the problem I have in Java? Because in there the exception explains about the fact that the codepage is 0.

I really hope you can help me to sort this out.

Thanks in advance for your help David.

Hugo

|||Hi David,

I found the solution. When updating a SQL Server 2005 NVARCHAR column, you have to use the following syntax:

UPDATE <table> SET <column> = N'<value>'

So for example:
UPDATE customer SET id = '€_???????£????_???_??????_прстуф_????'

Has to be this for a SQL Server connection:

UPDATE customer SET id = N'€_???????£????_???_??????_прстуф_????'


The prefix N before the value is required to make sure to save the string in Unicode format. I did not do this so far. Now I'm able to store and retrieve data into a SQL Server database and my collatin is now Latin1_General_CI_AS since this supports Unicode as well.

Hugo|||

hi hugo

this is gr8 thread

i have facing a problem

i want to insert indic values in a table in SQL server

the update statement u mentioned is useful

UPDATE <table> SET <column> = N'<value>'

but when i use INSERT INTO <table> VALUES(N'<value>')

can u tell me y doesnt this work

tahnx in advance.

Problem saving/retrieving unicode characters NVARCHAR with unicode collation (java jdbc)

I'm connecting to a SQL Server 2005 database using the latest (beta) sql server driver (Microsoft SQL Server 2005 JDBC Driver 1.1 CTP June 2006) from within Java (Rational Application Developer).

The table in SQL Server database has collation Latin1_General_CI_AS and one of the columns is a NVARCHAR with collation Indic_General_90_CI_AS. This should be a Unicode only collation. However when storing for instance the following String:

€_£_ùúü?ùúü?_???????£????_???_??????_прстуф_????
... it is saved with ? for all unicode characters as follows (when looking in the database):
€_£_ùúü?ùúü?_???????£????_???_?_?_?


The above is not correct, since all unicode characters should still be visible. When inserting the same string directly into the sql server database (without using Java) the result is ok.

Also when trying to retrieve the results again it complains about the following error within Java:

Codepage 0 is not supported by the Java environment.


Hopefully somebody has an answer for this problem. When I alter the collation of the NVARCHAR column to be Latin1_General_CI_AS as well, the data can be stored and retrieved however then of course the unicode specific characters are lost and results into ? So in that case the output is as described above (ie €_£_ùúü?ùúü?_???????£????_???_?_?_?)

We would like to be able to persist and retrieve unicode characters in a SQL Server database using the correct JDBC Driver. We achieved this result already with an Oracle UTF8 database. But we need to be compliant with a SQL Server database as well. Please help.

Thanks in advance for your help.
So far nobody replied on my question. unfortunately.
Please help me to sort out this problem.

Bottom line we just want to be able to save and retrieve Unicode characters in SQL server within our Java application. We want to do this by setting the NVARCHAR columns in all tables to a Unicode collation.

Please help.
Thanks.
|||

Hugo,

Can you tell me whether you have sendStringParametersAsUnicode set to "false" in your connection properties?

Thank you,

--David Olix

JDBC Development

|||

Hi David,

Thanks for your reply. I can ensure that I didn't set the sendStringParametersAsUnicode to "false". This parameter is default set to "true" so I didn't change it in the connection properties.

I found out that the unicode Collation I used "Indic_General_90_CI_AS" had a Codepage 0 in my SQL Server 2005 installation. In fact all unicode only collations do have a codepage 0 if I check them all using the following command:

SELECT COLLATIONPROPERTY('Indic_General_90_CI_AS', 'CodePage') as CodePage

Is this perhaps related to the problem I have in Java? Because in there the exception explains about the fact that the codepage is 0.

I really hope you can help me to sort this out.

Thanks in advance for your help David.

Hugo

|||Hi David,

I found the solution. When updating a SQL Server 2005 NVARCHAR column, you have to use the following syntax:

UPDATE <table> SET <column> = N'<value>'

So for example:
UPDATE customer SET id = '€_???????£????_???_??????_прстуф_????'

Has to be this for a SQL Server connection:

UPDATE customer SET id = N'€_???????£????_???_??????_прстуф_????'


The prefix N before the value is required to make sure to save the string in Unicode format. I did not do this so far. Now I'm able to store and retrieve data into a SQL Server database and my collatin is now Latin1_General_CI_AS since this supports Unicode as well.

Hugo
|||

hi hugo

this is gr8 thread

i have facing a problem

i want to insert indic values in a table in SQL server

the update statement u mentioned is useful

UPDATE <table> SET <column> = N'<value>'

but when i use INSERT INTO <table> VALUES(N'<value>')

can u tell me y doesnt this work

tahnx in advance.

problem running MS SQL Web Data Admin

Hi:
My client machine is XP Pro with SP1 with IIS 5.1 My server machine is
Windows 2000 server SP4 with IIS 5.0. Server has the latest MSDE 2000(SP3a,
in mixed mode) as well as MS SQL Web Data Admin (webadmin) installed on it.
I can use webadmin on the server to access data in MSDE using windows auth
as well as SQL login.
I then installed webadmin on the Client machine but can't get it to connect
to the MSDE on the server machine. I looked at KB article: 319930 and
ensured that test.udl on client XP machine can connect fine using TCP/IP and
sa userid to the MSDE on the server machine. But webadmin won't connect.
Here's the error message:
Server Error in '/webadmin' Application.
COM object with CLSID {10020200-E260-11CF-AE68-00AA004A34D5} is either not
valid or not registered.
Description: An unhandled exception occurred during the execution of the
current web request. Please review the stack trace for more information
about the error and where it originated in the code.
Exception Details: System.Runtime.InteropServices.COMException: COM object
with CLSID {10020200-E260-11CF-AE68-00AA004A34D5} is either not valid or not
registered.
Source Error:
An unhandled exception was generated during the execution of the current web
request. Information regarding the origin and location of the exception can
be identified using the exception stack trace below.
Stack Trace:
[COMException (0x80040154): COM object with CLSID
{10020200-E260-11CF-AE68-00AA004A34D5} is either not valid or not
registered.]
SqlAdmin.SqlServer.Connect()
SqlWebAdmin.databases.Page_Load(Object sender, EventArgs e) +28
System.Web.UI.Control.OnLoad(EventArgs e) +67
System.Web.UI.Control.LoadRecursive() +35
System.Web.UI.Page.ProcessRequestMain() +731
Version Information: Microsoft .NET Framework Version:1.1.4322.573; ASP.NET
Version:1.1.4322.573
Other ASP.NET starter kit apps (like Commerce and Portal) work fine from
Client machine using MSDE on the server. The problem seems to be with
webadmin. Any suggestions would be appreciated.
Vamsee Lakamsani
lakamsani AT gmail.com
The web data admin package needs a dll called SQLDMO.dll that is a com object that is only installed from the full version of SQL server, not with MSDE. That is the com object error message you are receiving.
"vl" wrote:

> Hi:
> My client machine is XP Pro with SP1 with IIS 5.1 My server machine is
> Windows 2000 server SP4 with IIS 5.0. Server has the latest MSDE 2000(SP3a,
> in mixed mode) as well as MS SQL Web Data Admin (webadmin) installed on it.
> I can use webadmin on the server to access data in MSDE using windows auth
> as well as SQL login.
> I then installed webadmin on the Client machine but can't get it to connect
> to the MSDE on the server machine. I looked at KB article: 319930 and
> ensured that test.udl on client XP machine can connect fine using TCP/IP and
> sa userid to the MSDE on the server machine. But webadmin won't connect.
> Here's the error message:
> --
> Server Error in '/webadmin' Application.
> ----
> --
> COM object with CLSID {10020200-E260-11CF-AE68-00AA004A34D5} is either not
> valid or not registered.
> Description: An unhandled exception occurred during the execution of the
> current web request. Please review the stack trace for more information
> about the error and where it originated in the code.
> Exception Details: System.Runtime.InteropServices.COMException: COM object
> with CLSID {10020200-E260-11CF-AE68-00AA004A34D5} is either not valid or not
> registered.
> Source Error:
> An unhandled exception was generated during the execution of the current web
> request. Information regarding the origin and location of the exception can
> be identified using the exception stack trace below.
> Stack Trace:
>
> [COMException (0x80040154): COM object with CLSID
> {10020200-E260-11CF-AE68-00AA004A34D5} is either not valid or not
> registered.]
> SqlAdmin.SqlServer.Connect()
> SqlWebAdmin.databases.Page_Load(Object sender, EventArgs e) +28
> System.Web.UI.Control.OnLoad(EventArgs e) +67
> System.Web.UI.Control.LoadRecursive() +35
> System.Web.UI.Page.ProcessRequestMain() +731
>
>
> ----
> --
> Version Information: Microsoft .NET Framework Version:1.1.4322.573; ASP.NET
> Version:1.1.4322.573
> Other ASP.NET starter kit apps (like Commerce and Portal) work fine from
> Client machine using MSDE on the server. The problem seems to be with
> webadmin. Any suggestions would be appreciated.
> --
> Vamsee Lakamsani
> lakamsani AT gmail.com
>
>

Saturday, February 25, 2012

problem installing latest MSDE

I had three problems installing the MSDE.
First, I have SQL Server 7 tools installed and must use Enterprise Manager
to get to an SQL Server 7. When I install MSDE it kills my SQL Server 7
tools. No servers show up anymore and it says I can't add any. Uninstalling
MSDE does not put things back.
Second, no menu is created on the start menu as the instructions say will
happen. I had to look around and find the EXE files.
I am accustomed to doing all my work through Enterprise Manager. I see no
Enterprise Manager facsimile or anything to use for creating a database or
setting up tables in MSDE. ThanksSorry, I don't have a solution, but I can say the reason to why this is happening:
MSDE 2000 installs the DMO dll's. EM uses DMO. And EM7 cannot use the SQL2K DLL's. So, then MSDE
installs the SQL2K DLL's, then the install has to remove EM7 as that wouldn't work anyhow. Perhaps
there's an MSDE install option which doesn't install DMO?
--
Tibor Karaszi, SQL Server MVP
Archive at: http://groups.google.com/groups?oi=djq&as_ugroup=microsoft.public.sqlserver
"David McDivitt" <x12code-del@.del-yahoo.com> wrote in message
news:42fkrv0hcr6od8l40qvhli8d2p3j1kr9bb@.4ax.com...
> I had three problems installing the MSDE.
> First, I have SQL Server 7 tools installed and must use Enterprise Manager
> to get to an SQL Server 7. When I install MSDE it kills my SQL Server 7
> tools. No servers show up anymore and it says I can't add any. Uninstalling
> MSDE does not put things back.
> Second, no menu is created on the start menu as the instructions say will
> happen. I had to look around and find the EXE files.
> I am accustomed to doing all my work through Enterprise Manager. I see no
> Enterprise Manager facsimile or anything to use for creating a database or
> setting up tables in MSDE. Thanks
>