2011-01-22 19 views
2

私はこの値を格納しようとしています:ţşşţşţşîăâ。/、şllkoăîâ= SQL Serverの列に。SQL Server 2005 - 文字エンコーディングの問題

列のデータ型はnvarchar(1000)で、insert文は

N'țșșțșțșțșîăâ./,șllkoăîâ=' 

のように見えるが内部のデータはまだのように現れてさ:????????? IAA ./ ,?llkoaîâ=

私は何を試すことができますか?

EDIT

私はちょうど私は、データベース内のデータ型を変更していたことに気づいたが、linq2sqlマッピングがvarchar型の代わりにnvarchar型に残りました。

これが原因で問題が発生しました。私は手動挿入を試した後でしか見ていませんでした。

ありがとうございました。

答えて

4
CREATE TABLE Test (test nvarchar(1000)) 
INSERT Test (test) VALUES (N'țșșțșțșțșîăâ./,șllkoăîâ=') 

-- SSMS query pane = correct results 
SELECT * FROM Test 

、右の "編集トップ200行" または「SE、オブジェクトエクスプローラでテーブルをクリックすると、 LECT TOP 1000 rows "は私のためにSSMS 2008で正しい結果を返します

次はN接頭辞なしです。データは、あなたの質問ごとに分割され

INSERT Test (test) VALUES ('țșșțșțșțșîăâ./,șllkoăîâ=') 
SELECT * FROM Test 
--gives ?????????îaâ./,?llkoaîâ= 

だから、これは宣伝としてSSMSとSQLが正確に動作していることを示しています。私たちは、正確なコード(またはメソッド)をご提示くださいあなたはデータを挿入するために使用されている

0

これをテーブルにどのように追加しますか? Mgmtスタジオで???あなたはどんな声明を使っていますか?

あなたがNVARCHAR列を持っている場合は、仕事に、このための有力NプレフィックスでN'...'構文を使用する必要がありますあなたがN接頭辞を省略した場合、Mgmt(仮想ディスクの管理)メーカーは、これが非に変換されます

INSERT INTO dbo.YourTable(someColumn) 
VALUES(N'țșșțșțșțșîăâ') 

UnicodeのVARCHAR一時的に....

関連する問題