MYSQL에서 SQL로 코드를 변경하려고하는데 오류가 발생했습니다 (SQL 구문 '제한').MYSQL - SQL 업데이트 제한
그래서 내 쿼리를 변경하고 "TOP"으로 업데이트하려고 시도했지만 SELECT로만 작동하는 것 같습니다. 그래서
, 나는이 MYSQL 쿼리를 변경하는 방법 :
MYSQL에서 SQL로 코드를 변경하려고하는데 오류가 발생했습니다 (SQL 구문 '제한').MYSQL - SQL 업데이트 제한
그래서 내 쿼리를 변경하고 "TOP"으로 업데이트하려고 시도했지만 SELECT로만 작동하는 것 같습니다. 그래서
, 나는이 MYSQL 쿼리를 변경하는 방법 :
그것은 당신의 쿼리의 버전을 매우 분명하지 않다
$fct="UPDATE users SET STREAM_TITRE = '$STREAM_TITRE', STREAM_URL = '$STREAM_URL', STREAM_DESC = '$STREAM_DESC', STREAM_GENRE = '$STREAM_GENRE' WHERE ID = '$IDSESS'";
감사 : 여기
$fct="UPDATE `users` SET `STREAM_TITRE` = '$STREAM_TITRE',`STREAM_URL` = '$STREAM_URL',`STREAM_DESC` = '$STREAM_DESC',`STREAM_GENRE` = '$STREAM_GENRE' WHERE `ID` =$IDSESS LIMIT 1";
내 제한없이 SQL 코드입니다 어떤 DBMS에서 작동하는지 그리고 그렇지 않은지 여부
ID
이 char 또는 varchar 유형 인 경우 LIMIT
버전에서 일부 따옴표가 누락되었습니다. MySQL은 매우 까다 롭고하지 않고 있지만 당신과 함께 또는 따옴표없이 많은 문제가되지 않습니다
$fct = "
UPDATE users
SET STREAM_TITRE = '$STREAM_TITRE'
, STREAM_URL = '$STREAM_URL'
, STREAM_DESC = '$STREAM_DESC'
, STREAM_GENRE = '$STREAM_GENRE'
WHERE ID = $IDSESS --<-- this should be '$IDSESS' , right?
----- or $IDSESS , depending on the datatype
LIMIT 1
";
참고 : MySQL과 PostgreSQL을에 LIMIT n
작품,하지만 다른 DBMS있다. 또한 ID
이 아마도 테이블의 기본 키일 수 있기 때문에 실제로는 필요하지 않다고 생각합니다. 당신은 SQL-서버 MySQL에서 문을 변환하려는 경우
, 당신은 역 인용 부호를 사용하고 LIMIT 1
TOP (1)
로 대체 안 :
$fct = "
UPDATE TOP (1) users
SET STREAM_TITRE = '$STREAM_TITRE'
, STREAM_URL = '$STREAM_URL'
, STREAM_DESC = '$STREAM_DESC'
, STREAM_GENRE = '$STREAM_GENRE'
WHERE ID = $IDSESS
";
감사합니다. SQL 버전을 찾으면 완벽 할 것이지만 감사합니다;) –
"SQL 버전"이란 무엇입니까? Microsoft SQL Server? –
내가'SQL 구문 'Limit''이 완료되었음을 의심 오류? 그리고 그 문제는 무엇입니까? 나에게는 쿼리가 작동하지 않는다고 생각하는 쿼리가있는 것 같습니다. 문제는 무엇입니까? – Nanne
$ fct를 인쇄하면 쿼리는 어떻게 생깁니 까? – Jim
어떤 SQL Server 버전을 사용하고 있습니까? 내가 본 문서에서는 TOP에 UPDATE를 사용할 수 있다고 명시하고 있습니다. 단순히 작동하지 않습니까, 아니면 오류 메시지가 나타 납니까? –