2011-03-08 3 views
0

SQL Server 2005의 테이블에 [제품/서비스] 필드가 있습니다. 이제 해당 테이블의 저장 프로 시저를 만들고 싶습니다. 오류 및 저장 프로 시저가 정상적으로 작동하는 것보다 내 테이블에만 제품을 넣을 때. 이제 [제품/서비스]를 제 테이블에두고 싶습니다. 어떻게 그렇게 할 수 있습니까 ?????필드를 넣을 때 저장 프로 시저를 만드는 데 문제가 있습니다/

+3

잘못된 생각은 특수 문자를 사용하는 테이블이나 열의 이름입니다. –

+0

은 코드와 오류 메시지를 공유합니다. – Silx

답변

4

열/변수/매개 변수/테이블 /보기/프로 시저/etc 이름에 특수 문자를 포함시키려는 것은 항상 나쁜 생각입니다. 이 모든 나쁜 결정을 당신의 모든 코드에서 춤춰야합니다. 영원히.

Identifiers

Delimited Identifiers

에서 : 특정 코드 및/또는 오류 메시지의 모든 세부 사항없이

, 내가 제공 할 수있는 모든 SQL Server의 일을 명명에 대한 규칙에 이러한 링크가 있습니다 두 번째 링크 :

Microsoft SQL Server 변수 이름을 인식하지 않고 절차 매개 변수는 으로 구분됩니다. 이러한 유형의 식별자 은 일반 식별자 식별자 규칙을 준수해야합니다.

가장 좋은 방법은 Product_Services 또는 ProductServices 같은 열 뭔가를 이름을 지정하는 것입니다 그리고 당신은 지역 변수와 @Product_Services 또는 @ProductServices을 명명 된 매개 변수를 가질 수 있습니다.

당신의 다음 가장 좋은 방법은 혼자 테이블 열이 [Product/Services]@Product_Services 또는 @ProductServices처럼 이름을 지역 변수라는 이름의 경우에도 테이블을 떠날 것입니다.

0

제품/서비스를 언급하거나 다시 정의 할 때 [제품/서비스]라는 이름을 올바르게 인용하고 있는지 확인하십시오. [] MS SQL Server의 인용 문자입니다.

관련 문제