"제품명='" & txt제품명 & "'" 라는 코드가 만들어지는 원리를 알고 싶은데요
먼저 제품명=txt제품명이라는 기본코드에서 프로시저에서 sql을 사용할 때는 sql문을 큰따옴표로 묶기
때문에 "제품명=txt제품명"이 되고요 변수를 상수로 만들어야 되기 때문에 txt제품명은 작은따옴표로
묶어서 "제품명='txt제품명'"이 되고요 txt제품명이라는 문자로 값을 받지 않기 위해서 앰퍼샌드로 연결해서
하는 것까지 이렇게 생각하는게 맞나요?
추가질문이요
141쪽에 제시된 조회식에서 컨트롤 연결하기에서 컨트롤 값이 문자인데도 불구하고 문자로 변환하기 위해 작은따옴표로 묶는 이유가 문자로 인식을 못하는 경우가 있기 때문에 묶어주는 건가요?
추가질문이요
148쪽 상단에 변수로 입력받은 값을 상수로 변경한 후 큰따옴표로 묶어주기 위해 앰퍼샌드를 이용하여 문자열을 더해준다고 했는데 사실 각각의 문자열을 큰따옴표로 묶어주면 앰퍼샌드로 연결해주는 건데 억지 아닌가요? 그리고 변수를 상수로 변경해주는 것은 무엇인가요?
추가질문이요
148쪽을 보면 각각의 문자열을 큰따옴표로 묶었는데요 141쪽을 보면 이와는 달리 제품명='와 '만을 큰따옴표로 묶어서 두 묶음으로만 만들었단 말이에요 왜 제품명 따로 = 따로 작은따옴표 따로 만들지 않은 거죠?
추가질문이요
근본적으로 sql문을 사용할 때 문자열이 뿔뿔이 분리된 것으로 인식되기 때문에 각각의 문자열을 큰따옴표로 묶어서 앰퍼샌드로 연결하는 원리잖아요 그럼 그 문자열이 뿔뿔이 분리된 것으로 인식하는 이유는 액세스 자체의 인식방법일 뿐이고 다른 원리는 없는건가요?
추가질문이요
149쪽 me.filter="판매량>=" & txt수량 에서요 원래 filter= 다음에 오는 문장 전체를 큰따옴표로 묶는 거잖아요 그러면 me.filter="판매량>=" & txt수량 & """ 이라고 해야 맞는데 왜 올바르게 인식되지 않을까요?
안녕하세요.
"제품명='" & txt제품명 & "'" 라는 코드가 만들어지는 원리를 알고 싶은데요
먼저 제품명=txt제품명이라는 기본코드에서 프로시저에서 sql을 사용할 때는 sql문을 큰따옴표로 묶기
때문에 "제품명=txt제품명"이 되고요 변수를 상수로 만들어야 되기 때문에 txt제품명은 작은따옴표로
묶어서 "제품명='txt제품명'"이 되고요 txt제품명이라는 문자로 값을 받지 않기 위해서 앰퍼샌드로 연결해서
하는 것까지 이렇게 생각하는게 맞나요?
-> txt제품명에 입력되는 값이 문자이기때문에 'txt제품명'을 홑따옴표(')로 묶어줘야 하므로 "제품명='txt제품명'"이 됩니다. 하지만 txt제품명과 같은 특정 컨트롤명은 쌍따옴표(") 안에 입력할 수 없으므로 txt제품명만을 쌍따옴표에서 빼준다음 이것들을 &로 연결해 준 것입니다. &는 문자와 문자를 연결해주는 연산자입니다.
"제품명=‘” & txt제품명 & “ ’”
추가질문이요
141쪽에 제시된 조회식에서 컨트롤 연결하기에서 컨트롤 값이 문자인데도 불구하고 문자로 변환하기 위해 작은따옴표로 묶는 이유가 문자로 인식을 못하는 경우가 있기 때문에 묶어주는 건가요?
-> 컨트롤의 값이 문자일 경우에는 홑따옴표로 묶어줘야 합니다. 컨트롤 값이 아닌 일반 문자를 직접 코드에 입력해서 비교할 때도 홑따옴표로 묶어줘야 합니다.
추가질문이요
148쪽 상단에 변수로 입력받은 값을 상수로 변경한 후 큰따옴표로 묶어주기 위해 앰퍼샌드를 이용하여 문자열을 더해준다고 했는데 사실 각각의 문자열을 큰따옴표로 묶어주면 앰퍼샌드로 연결해주는 건데 억지 아닌가요? 그리고 변수를 상수로 변경해주는 것은 무엇인가요?
-> 큰따옴표로 묶어주기 위해 임퍼샌드를 사용하는 것이 아니라 큰따옴표로 묶여 있는 텍스트가 있기때문에 두 개를 연결해주기 위해 인퍼센트가 사용된 것입니다.
추가질문이요
148쪽을 보면 각각의 문자열을 큰따옴표로 묶었는데요 141쪽을 보면 이와는 달리 제품명='와 '만을 큰따옴표로 묶어서 두 묶음으로만 만들었단 말이에요 왜 제품명 따로 = 따로 작은따옴표 따로 만들지 않은 거죠?
-> 제품명은 컨트롤이 아니라 테이블에 있는 필드명이기때문에 홑따옴표로 묶지 않습니다.
추가질문이요
근본적으로 sql문을 사용할 때 문자열이 뿔뿔이 분리된 것으로 인식되기 때문에 각각의 문자열을 큰따옴표로 묶어서 앰퍼샌드로 연결하는 원리잖아요 그럼 그 문자열이 뿔뿔이 분리된 것으로 인식하는 이유는 액세스 자체의 인식방법일 뿐이고 다른 원리는 없는건가요?
-> 앞에서도 설명했듯이 txt제품명과 같은 컨트롤명을 따옴표 안에 입력하면 컨트롤명이 아니라 단순히 텍스트로 인식하기때문에 컨트롤명을 따옴표 밖에 입력해야 합니다. 그러다 보니 컨트롤명 앞뒤에 있는 것을 따옴표로 묶어주고, 컨트롤명만 밖에 입력한 것입니다.
추가질문이요
149쪽 me.filter="판매량>=" & txt수량 에서요 원래 filter= 다음에 오는 문장 전체를 큰따옴표로 묶는 거잖아요 그러면 me.filter="판매량>=" & txt수량 & """ 이라고 해야 맞는데 왜 올바르게 인식되지 않을까요?
-> me.filter="판매량>=" & txt수량 로 작성해야 합니다. txt수량 컨트롤에 입력되는 값은 숫자이므로 혼따옴표로 묶지 않아도 되므로 뒤에 & """ 를 넣을 필요가 없습니다.
즐거운 하루 되세요.
-
*2015-06-05 09:53:24
안녕하세요.
"제품명='" & txt제품명 & "'" 라는 코드가 만들어지는 원리를 알고 싶은데요
먼저 제품명=txt제품명이라는 기본코드에서 프로시저에서 sql을 사용할 때는 sql문을 큰따옴표로 묶기
때문에 "제품명=txt제품명"이 되고요 변수를 상수로 만들어야 되기 때문에 txt제품명은 작은따옴표로
묶어서 "제품명='txt제품명'"이 되고요 txt제품명이라는 문자로 값을 받지 않기 위해서 앰퍼샌드로 연결해서
하는 것까지 이렇게 생각하는게 맞나요?
-> txt제품명에 입력되는 값이 문자이기때문에 'txt제품명'을 홑따옴표(')로 묶어줘야 하므로 "제품명='txt제품명'"이 됩니다. 하지만 txt제품명과 같은 특정 컨트롤명은 쌍따옴표(") 안에 입력할 수 없으므로 txt제품명만을 쌍따옴표에서 빼준다음 이것들을 &로 연결해 준 것입니다. &는 문자와 문자를 연결해주는 연산자입니다.
"제품명=‘” & txt제품명 & “ ’”
추가질문이요
141쪽에 제시된 조회식에서 컨트롤 연결하기에서 컨트롤 값이 문자인데도 불구하고 문자로 변환하기 위해 작은따옴표로 묶는 이유가 문자로 인식을 못하는 경우가 있기 때문에 묶어주는 건가요?
-> 컨트롤의 값이 문자일 경우에는 홑따옴표로 묶어줘야 합니다. 컨트롤 값이 아닌 일반 문자를 직접 코드에 입력해서 비교할 때도 홑따옴표로 묶어줘야 합니다.
추가질문이요
148쪽 상단에 변수로 입력받은 값을 상수로 변경한 후 큰따옴표로 묶어주기 위해 앰퍼샌드를 이용하여 문자열을 더해준다고 했는데 사실 각각의 문자열을 큰따옴표로 묶어주면 앰퍼샌드로 연결해주는 건데 억지 아닌가요? 그리고 변수를 상수로 변경해주는 것은 무엇인가요?
-> 큰따옴표로 묶어주기 위해 임퍼샌드를 사용하는 것이 아니라 큰따옴표로 묶여 있는 텍스트가 있기때문에 두 개를 연결해주기 위해 인퍼센트가 사용된 것입니다.
추가질문이요
148쪽을 보면 각각의 문자열을 큰따옴표로 묶었는데요 141쪽을 보면 이와는 달리 제품명='와 '만을 큰따옴표로 묶어서 두 묶음으로만 만들었단 말이에요 왜 제품명 따로 = 따로 작은따옴표 따로 만들지 않은 거죠?
-> 제품명은 컨트롤이 아니라 테이블에 있는 필드명이기때문에 홑따옴표로 묶지 않습니다.
추가질문이요
근본적으로 sql문을 사용할 때 문자열이 뿔뿔이 분리된 것으로 인식되기 때문에 각각의 문자열을 큰따옴표로 묶어서 앰퍼샌드로 연결하는 원리잖아요 그럼 그 문자열이 뿔뿔이 분리된 것으로 인식하는 이유는 액세스 자체의 인식방법일 뿐이고 다른 원리는 없는건가요?
-> 앞에서도 설명했듯이 txt제품명과 같은 컨트롤명을 따옴표 안에 입력하면 컨트롤명이 아니라 단순히 텍스트로 인식하기때문에 컨트롤명을 따옴표 밖에 입력해야 합니다. 그러다 보니 컨트롤명 앞뒤에 있는 것을 따옴표로 묶어주고, 컨트롤명만 밖에 입력한 것입니다.
추가질문이요
149쪽 me.filter="판매량>=" & txt수량 에서요 원래 filter= 다음에 오는 문장 전체를 큰따옴표로 묶는 거잖아요 그러면 me.filter="판매량>=" & txt수량 & """ 이라고 해야 맞는데 왜 올바르게 인식되지 않을까요?
-> me.filter="판매량>=" & txt수량 로 작성해야 합니다. txt수량 컨트롤에 입력되는 값은 숫자이므로 혼따옴표로 묶지 않아도 되므로 뒤에 & """ 를 넣을 필요가 없습니다.
즐거운 하루 되세요.