docmd를 이용하는 runsql명령에서 폼의컨트롤이 아닌 프로시저에서 선언한 변수를 사용하는 경우에는 변수를 분리하라고 제시되어있는데
프로시저에서 선언한 변수인지 확인하는 쉬운방법이 있을까요
아예 모든 식을쓸때 구분하지 않아도 되는 식도 구분해도되는지요
또 141page에 txt제품명에 숫자값을 가지고 있으면 작은따옴표를 쓰지 않는데 써도 되나요
아무리 예제를 봐도 해결이 되지 않습니다.
폼의 컨트롤이 아닌 프로시저에서 선언한 변수(변수상품코드)
프로시저 안에서 선언한 것입니다.
docmd.runsql "Delete * from 상품_2 where 상품코드 =''" & 변수상품코드 & "''"
를 사용하기 전에 필요에 의해서 만들어진 변수 입니다.
만약.. 변수상품코드를 어떤 컨트롤에 입력되어 있는 결과에 따라 달라진다고 할때..
if txt상품명 = "전화기" then
변수상품코드 = 1
else
변수상품코드 = 2
end if
docmd.runsql "Delete * from 상품_2 where 상품코드 =''" & 변수상품코드 & "''"
라고 사용된다면..
변수상품코드에는 1이나 2의 값이 들어가고 상품코드와 비교가 되게 됩니다.
이것이 폼의 컨트롤이 아닌 프로시저에서 선언한 변수 입니다.
숫자값일때 작은따옴표를 사용하면 문자값으로 인식되므로 사용하면 안됩니다.
좋은 하루 되세요.
-
*2016-02-26 07:19:28
폼의 컨트롤이 아닌 프로시저에서 선언한 변수(변수상품코드)
프로시저 안에서 선언한 것입니다.
docmd.runsql "Delete * from 상품_2 where 상품코드 =''" & 변수상품코드 & "''"
를 사용하기 전에 필요에 의해서 만들어진 변수 입니다.
만약.. 변수상품코드를 어떤 컨트롤에 입력되어 있는 결과에 따라 달라진다고 할때..
if txt상품명 = "전화기" then
변수상품코드 = 1
else
변수상품코드 = 2
end if
docmd.runsql "Delete * from 상품_2 where 상품코드 =''" & 변수상품코드 & "''"
라고 사용된다면..
변수상품코드에는 1이나 2의 값이 들어가고 상품코드와 비교가 되게 됩니다.
이것이 폼의 컨트롤이 아닌 프로시저에서 선언한 변수 입니다.숫자값일때 작은따옴표를 사용하면 문자값으로 인식되므로 사용하면 안됩니다.
좋은 하루 되세요.