도와주세요. asp.net 웹 페이지 구문을 사용하여 비트 데이터 유형을 업데이트하는 데 문제가 있습니다. 여기에 모듈이 작업을 수행하기 위해 가정 내 코드Bit 데이터 유형 SQL Server 웹 페이지를 업데이트 할 수 없습니다.
var db = Database.Open("StarterSite");
var idAdmin = ""; // Here's the ID of the new Admin
var idAdmin2 = ""; // Here's The ID of the old Admin
if(!IsPost){
if(!Request.QueryString["id"].IsEmpty() && Request.QueryString["id"].IsInt()) {
diklatid = Request.QueryString["id"];
var dbCommand = "SELECT * FROM diklat WHERE ID_diklat = @0";
var row = db.QuerySingle(dbCommand, diklatid);
if(row != null) {
string rowidadmin = row.ID_Admin.ToString();
idAdmin2 = rowidadmin; // Inserted the ID value of old admin to this variable
}
else{
Validation.AddFormError("No data choosen");
}
}
else{
Validation.AddFormError("No data choosen");
}
}
if(IsPost){
idAdmin = Request.Form["idAdmin"]; //The ID value of new admin comes from the Form
if (idAdmin == idAdmin2){
//Check if the new admin equals to old admin
-------------------//do something------
Response.Redirect("~/SuperAdmin/diklat");
}
else
{
//-----------------------------The Main Problem------------------------
// If different it suppose to change "onDuty" variable of the new one to 1 (true) and the old one to 0 (false)
var updateCommand1 = "UPDATE UserProfile SET onDuty= 0 WHERE [email protected]";
db.Execute(updateCommand1, idAdmin2);
var updateCommand2 = "UPDATE UserProfile SET onDuty= 1 WHERE [email protected]";
db.Execute(updateCommand2, idAdmin);
Response.Redirect("~/SuperAdmin/diklat");
}
입니다 : 비트 데이터 타입에서 (근무 여부) 관리자의 상태를 편집. 내가 가진 상황은 관리자가 새 노드로 업데이트되면 이전 노드의 비트 데이터 유형 인 onDuty가 0 (1에서)로 업데이트되지 않지만 새 값이 1 (0에서)으로 업데이트됩니다. 죄송합니다 긴 코드, 문제는 간단하지만 난이 문제가 내 코드에서 다른 곳에서 오지 않는지 확인하고 싶습니다. 충분히 명확 할 것입니다.
참고 : 오류 공고는 전혀 없습니다! 페이지가 여전히 작동하고 데이터베이스의 데이터 만 업데이트되지 않습니다.
-1 너무 많은 코드를 게시하는 경우. 문제를 좁히고 관련 코드 만 게시 할 수 있습니까? –
좋아, 나는 그것이 친구 @JohnSaunders 나는 당신의 제안에 따라 편집 한 –