|
헉 벌써 올라왔군.. 빠르군..
한거니깐 올려드릴께요 ㅠ.ㅠ
AnsiString SQLString;
SQLString = "UPDATE [users] SET [state] = " + AnsiString(asData);
SQLString += " WHERE [userid] = " + QuoteStr(asCommand);
Query1->Close();
Query1->SQL->Clear();
Query1->SQL->Add(SQLString);
Query1->Open();
이렇게 하세요...
글구 님의 소스에서 '' 빠진것도 있지만, 파라미터하고 필드네임하고 같아서는 안되고요
또, 영문으로 필드명을 했을때는 [] 를 쳐주셔야 안전합니다. (기본문장에 걸리지 않도록 필드라고
명시해주는 역할입니다.)
그럼 ~~
아, 그리고 제이름은, 개 '박' 살 임돠 --;
홍지곤 님이 쓰신 글 :
:
: UPDATE SET data = 2 WHERE id = 'magic';
:
: 이렇게 하면 된다고 하셨는데요..
:
: 임의로 data에 2값하고, id 값에 magic라는 값을 넣는게 아니고요..
:
: 임의에 변수에 Command와 Data에 값을 받아서 Update 문장을 하려고 합니다.
:
: 그래서 이렇게 구현을 했습니다.. 그런데 문제가 있습니다.
:
: AnsiString Command;
: AnsiString Data;
:
: Query1->Close();
: Query1->SQL->Clear();
: Query1->SQL->Add("update users");
: Query1->SQL->Add("set state = :state");
: Query1->SQL->Add("where userid = :userid");
: Query1->ParamByName("userid")->AsString = asCommand;
: Query1->ParamByName("state")->AsInteger = StrToInt(asData);
: Query1->Open();
:
: 이런 메시지가 나옵니다.
: Invalid column name 'state'.'.Process stopped.
:
: 꼭 이게 아니더라두... userid칼럼과 == 변수 Command값이 일치하면
: state칼럼에 Data값을 넣어 수정하게 할 수 있는 방법요..
:
: 아시는 분 가르켜 주세요...
:
: 그럼..즐프하세요
:
|