私が達成しようとしているのは、テーブルへの各エントリに固有の識別子を生成して挿入することです。System.Data.SqlClientが私のステートメントについて文句を言うのはなぜですか?
私はその結果が(予想されたように、データベースに直接INSERTクエリを実行するとtherforeユーザIDがautomaticalyたびに新たに生成され、インクリメントされ、ユーザーID列にデフォルト値(newsequentialid())
を追加しました値が加算されます)。
しかしこれは、私は次のエラーを提供し、私のASP.NETのWebサービスを通じてクエリを実行する場合ではありません。
System.Data.SqlClient.SqlException: Operand type clash: int is incompatible with uniqueidentifier
私はエラーがデータ型の衝突を表示していることを理解し、私はないです私のC#コード内からそのcoloumnを移植しようとするのではなく、automaticalyに追加する必要がありますか? (なし?)
DataClassesDataContext dbContext = new DataClassesDataContext();
AddingNewUsers.UserName = UserName;
AddingNewUsers.UserPass = UserPass;
AddingNewUsers.DOB = Convert.ToDateTime(DOB);
AddingNewUsers.EmailAddress = Email;
AddingNewUsers.JoiningDate = DateTime.Today;
AddingNewUsers.Status = "Active";
AddingNewUsers.WalletAmount = 0;
dbContext.UserTables.InsertOnSubmit(AddingNewUsers);
dbContext.SubmitChanges();
一意の識別子は、UserIdをInt型に変更する必要があるGUIDを期待します。Int型にデータ型を変更します。また、C#コードでそのフィールドを設定する予定がある場合、その列は自動インクリメント列でなければなりません。 – MethodMan
SQL Server Profilerを使用して、アプリケーションからデータベースサーバーに送信されているステートメントを正確に表示します。場合によっては、問題の性質と原因についていくつかの洞察を得るのに役立ちます。 –
@MethodMan:これは正解としてこれを正解としてください。 –