반응형
SQL 예약어를 테이블 이름으로 사용하는 방법
이 쿼리를 사용하는 경우:
INSERT INTO order (order_quantity)
VALUES ('50')
에러가 표시됩니다.
SQL 구문에 오류가 있습니다. 146행의 'order(order_quantity)' VALUES('50')' 근처에서 사용할 올바른 구문은 MariaDB 서버 버전에 해당하는 설명서를 참조하십시오.
내 질문이 뭐가 문제죠?
예약된 단어는 데이터베이스, 테이블, 열, 변수 또는 기타 개체 이름으로 사용하지 않는 것이 좋습니다.ANSI 표준 구문에서 예약된 단어를 개체 이름으로 사용하는 경우 해당 단어를 지정된 컨텍스트에서 키워드가 아닌 개체로 사용할 수 있도록 하려면 이중 따옴표로 묶어야 합니다.
다음으로 다양한 SQL 엔진에 고유한 예를 제시하겠습니다.
order
는 SQL 키워드로 결과 정렬에 사용됩니다(ORDER BY ...
)
MySQL 또는 Maria DB를 사용하는 경우 백틱을 랩으로 감습니다.
INSERT INTO `order` (order_quantity) VALUES ('50');
MS SQL Server를 사용하는 경우 괄호를 둘러쌉니다.
INSERT INTO [order] (order_quantity) VALUES ('50');
pgSQ를 사용하는 경우 큰따옴표로 둘러싸십시오.L
INSERT INTO "order" (order_quantity) VALUES ('50');
예를 들어, (상식 이외에는) 아무것도 데이터베이스를 작성할 수 없습니다.INSERT
탁자와 함께INTO
기둥이 있는 모양VALUE(42)
네, 이 쿼리는 동작합니다.
USE [INSERT];
SELECT [INTO].[VALUE(42)] FROM [INTO];
언급URL : https://stackoverflow.com/questions/54479920/how-to-use-a-reserved-word-in-sql-as-a-table-name
반응형
'programing' 카테고리의 다른 글
regex.test V.S string.match를 실행하여 문자열이 정규 표현과 일치하는지 확인합니다. (0) | 2022.09.21 |
---|---|
정적 방식이 하나의 방법으로 간주되는 이유는 무엇입니까? (0) | 2022.09.21 |
PHP에서 숫자를 월 이름으로 변환 (0) | 2022.09.21 |
node.js를 사용하여 원하는 ID를 생성하는 방법 (0) | 2022.09.21 |
값을 반환하지 않고 비포이드 함수의 끝에서 흘러내리면 컴파일러 오류가 발생하지 않는 이유는 무엇입니까? (0) | 2022.08.17 |