mysql update 쿼리 질문이요~
글쓴이: mahakhl / 작성시간: 수, 2010/07/28 - 11:20오전
sprintf(idQuery,"updata url set Count=(Count+1) where url='%s'", buf_in);
query_stat=mysql_query(connection,idQuery);
url입력받아서 buf_in에 담은뒤에
url테이블에서 일치하는 url있으면 해당 열의 count값을 1씩증가시켜주는 쿼리문 만들려고 하는데
Mysql query error : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'updata url set Count=(Count+1) where url='www.naver.com'' at line 1
이런 에러가 계속 나네요ㅠㅠ
Count=(Count+1)에 문제가 있는거같은데...어떻게 바꾸어야 할까요
count 자료형은 int default'0' not null 로 선언해 주었습니다!
Forums:
count는 sql 문법에
count는 sql 문법에 포함된 문자열이라서 저런 에러가 납니다.
`Count`와 같이 컬럼에는 백틱(`) 으로 감싸주세요.
백틱으로도 감싸주구
백틱으로도 감싸주구
혹시나 해서
count말고 다른 이름으로도 해봤는데 같은에러가 발생하네요ㅠ
설마 아니겠지만 그래도...
적어놓으신 sql 문에서 update 를 updata 로 적으신듯...
아실수를....ㅎㅎ
감사합니다!!
하나만 더 여쭈어 봐도 될까요
sprintf(idQuery,"UPDATE url SET `Count`=`Count`+1 WHERE URL in (SELECT url FROM url WHERE URL='%s')", buf_in);
update와 select문을 같이 사용할때 select구문에서 url 값 하나만 가져올수 있더라구요..
sprintf(idQuery,"UPDATE url SET `Count`=`Count`+1 WHERE URL in (SELECT * FROM url WHERE URL='%s')", buf_in);
이런식으로 모든 colunm값을 가져오면 에러가 나구요..
어떻게 가져올수 있는 방법이 없을까요?
같은 테이블에서
같은 테이블에서 데이터를 가져오는 상황인가요?
그게 맞다면 이해가 안되는 쿼리네요 @_@;
UPDATE `url` SET `Count` = `Count` + 1 WHERE `URL` = '%s'
라는 쿼리로 해결이 될 상황인듯싶은데요...
댓글 달기