2012-03-22 7 views
0

表(バーコード)の構造としてはnvarcharで作業していない:SQLサーバーCEのアップデートはPK

Barcode - nvarchar(30) Unique, PK 
ProductID - bigint 

私が更新を実行した場合:1000 更新バーコードSETのProductID =のProductID = 2 が、これは動作します。だから私は正しいDBを見ていると知っていると、更新コマンドが動作するはずです。

ただし、 バーコードの更新SET ProductID = 1000 WHERE Barcode = '123456789' エラーは発生せず、DBに変更はありません。

私は私の髪を引っ張っていますが、それはどちらも助けにはなりません。

SQLCEには問題がありますか?

誰でも助けてもらえると嬉しいです! おかげ

+0

は、適切なレコードが存在し、しようとしないことbarcode = '123456789'を選択します。それはほとんどのように、 – gprasant

+0

を更新するテーブル内の一致するレコードがありません、レコードが存在します。 – jimmy

答えて

1

確認してくださいバーコードのProductId = 1000 ...空白がない

+0

クエリでこれを行う方法はありますか?すなわち、trim([productID])= 1000 – jimmy

+0

データベースを見ると、フィールドに空白がなく(フィールドが選択され、コードのみが強調表示され、何も表示されません)。 しかし、私はrtrim([productID])= 1000を試して、更新を行った。 私を正しい方向に向けてくれてありがとう。 – jimmy

0

あなただけ行うことができWHERE Barcode LIKE '%123456789%'それが持っている場合は空白の前と後の'123456789'