커뮤니티

DataBase 관련 질문 드립니다

프로필 이미지
도도당
2018-11-20 21:29:12
2918
글번호 224652
답변완료
안녕하세요!! 제가 mssql DB를 Q&A게시판을 보고 연결을 했습니다. 그런데 문제가 한가지 생겨서요. s*lect문을 날리면 DB에서 나오는 결과물이 하나라도 있으면 상관이 없는데 s*lect문을 날려서 결과(레코드)값이 0이면 "TypeError: 데이터의 끝 또는 시작부분을 지나서 스크롤하려고 했습니다" 라는 에러 문구가 뜨면서 에러가 나서 더이상 진행을 할 수가 없습니다ㅠ 예를 들어 var query = "buyPrice FROM LogData WHERE stockCode = 'A" + codeNum + "'; Main.MessageList("S*LECT query : ", query); var s*lectFlag = D1.S*lect(query, "s*lectQuery"); 금지어가 있어서 *처리했습니다. 이렇게 실행하면 레코드 값이 하나라도 있으면 에러가 안나고 결과값을 잘 가져오는데 레코드 값이 없으면 3번째 줄에서 위에 에러 메시지가 뜹니다ㅠ s*lectFlag 값이 true를 반환하면 상관없는데 false를 반환할 경우 이 반환값을 아예 받을 수 없는것 같아요. 해결 방법좀 알려주세요. 그리고 ysdb파일을 생성하지 않으려면 s*lect구문에서 탭 이름을 지정해주지 않으면 생성이 안된다고 게시판에서 답변해 주신 글을 보았습니다. var s*lectFlag = D1.S*lect(query, ""); var s*lectFlag = D1.S*lect(query); 이런 방식으로 해봤는데 레코드 값이 존재하더라도 s*lectFlag 값이 false를 반환해더라구요. ysdb파일을 생성하지 않으려면 어떻게 해야 하는지도 알려주세요!! 그리고 한가지 더 질문이 있는데요. 예수금 관련 질문입니다. 당일 주식을 팔았을 경우 당일 판 금액까지 포함해서 토탈 금앨을 불러 올 수 있는지요? A1.GetBalanceETCinfo(18); 이렇게 불러오면 당일 판 주식의 금액을 뺀 나머지 예수금을 불러오더라구요. 당일 주식을 판 금액도 당일 주식을 살 수 있잖아요. 예수금 + 당일 주식 판 금액 까지 불러와 현금으로 최대한 주식을 살수 있는 금액을 불러오는 방법을 알고 싶습니다!! 감사합니다~
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2018-11-30 16:30:21

안녕하세요 예스스탁입니다. 1 S*lect문의 리턴값은 S*lect의 결과를 편집기로 전송했는지의 여부를 나타냅니다. S*lect문의 결과값이 없을 때의 Exception 에 대한 해결법은 현재로서는 없습니다. 해당 부분은 별도로 프로그램 수정을 통해 가능한 방법이 있는지 찾아보도록 하겠습니다. 도옴을 드리지 못해 죄송합니다. 2 Account1.GetBalanceETCinfo(100) 순자산액(정산금액)이 제공되고 있습니다. NH트레이더의 경우에는 계좌잔고의 순자산액, 예스트레이더는 정산금액으로 표시되는 값이 리턴됩니다. 즐거운 하루되세요 > 도도당 님이 쓴 글입니다. > 제목 : DataBase 관련 질문 드립니다 > 안녕하세요!! 제가 mssql DB를 Q&A게시판을 보고 연결을 했습니다. 그런데 문제가 한가지 생겨서요. s*lect문을 날리면 DB에서 나오는 결과물이 하나라도 있으면 상관이 없는데 s*lect문을 날려서 결과(레코드)값이 0이면 "TypeError: 데이터의 끝 또는 시작부분을 지나서 스크롤하려고 했습니다" 라는 에러 문구가 뜨면서 에러가 나서 더이상 진행을 할 수가 없습니다ㅠ 예를 들어 var query = "buyPrice FROM LogData WHERE stockCode = 'A" + codeNum + "'; Main.MessageList("S*LECT query : ", query); var s*lectFlag = D1.S*lect(query, "s*lectQuery"); 금지어가 있어서 *처리했습니다. 이렇게 실행하면 레코드 값이 하나라도 있으면 에러가 안나고 결과값을 잘 가져오는데 레코드 값이 없으면 3번째 줄에서 위에 에러 메시지가 뜹니다ㅠ s*lectFlag 값이 true를 반환하면 상관없는데 false를 반환할 경우 이 반환값을 아예 받을 수 없는것 같아요. 해결 방법좀 알려주세요. 그리고 ysdb파일을 생성하지 않으려면 s*lect구문에서 탭 이름을 지정해주지 않으면 생성이 안된다고 게시판에서 답변해 주신 글을 보았습니다. var s*lectFlag = D1.S*lect(query, ""); var s*lectFlag = D1.S*lect(query); 이런 방식으로 해봤는데 레코드 값이 존재하더라도 s*lectFlag 값이 false를 반환해더라구요. ysdb파일을 생성하지 않으려면 어떻게 해야 하는지도 알려주세요!! 그리고 한가지 더 질문이 있는데요. 예수금 관련 질문입니다. 당일 주식을 팔았을 경우 당일 판 금액까지 포함해서 토탈 금앨을 불러 올 수 있는지요? A1.GetBalanceETCinfo(18); 이렇게 불러오면 당일 판 주식의 금액을 뺀 나머지 예수금을 불러오더라구요. 당일 주식을 판 금액도 당일 주식을 살 수 있잖아요. 예수금 + 당일 주식 판 금액 까지 불러와 현금으로 최대한 주식을 살수 있는 금액을 불러오는 방법을 알고 싶습니다!! 감사합니다~