데이터베이스 개발자 질문과 답변 게시판

데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.

안녕하세요.

mysql 함수를 생성하려 하는데 구문오류가 계속 뜹니다..

검색해서 나오는 갖가지 예제들도 참고해서 이것저것 바꾸어 보았는데

뭐가 잘못된건지 찾을 수가 없어서.. 혹시 도움을 받을 수 있을까 싶어 글을 올립니다.


mssql에 있던 DB를 그대로 mysql로 옮기는 업무 중이라 함수도 똑같이 만드는 중입니다.

mssql에 있던 함수를 그대로 갖다놓고 mysql 형식을 검색해보며 그에 맞게 바꾸는 식으로 하고 있습니다..


오히려 안쪽 select문 같은건 테스트도 해봤고 한데.. 아래쪽도 분명 오류가 날건데 그쪽은 가보기도전에

윗쪽에 구문이 대체 뭐가 잘못된건지.. 조금씩 조금씩 변형을 줘 봐도 계속 같은 부분에서 맴도네요... ㅠㅠ

감사합니다.



---------------------------------


오류 코드: 1064
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@pointLon REAL, @pointLat REAL)
 RETURNS @ContainsData TABLE
 (
 BW_AREA_ID V' at line 2


----------------------


DELIMITER $$

DROP FUNCTION IF EXISTS db1.myfn_ContainsPointInPolygon$$
CREATE FUNCTION `db1`.`myfn_ContainsPointInPolygon`(@pointLon REAL, @pointLat REAL)
 RETURNS @ContainsData TABLE
 (
 BW_AREA_ID VARCHAR(3),
 BW_AREA_NAME VARCHAR(20)
 )
 
 AS
 BEGIN
 
  DECLARE @BW_AREA_ID VARCHAR(3)
  DECLARE @BW_AREA_NAME VARCHAR(20)
  
  DECLARE @pt REAL
  SET @pt=REAL::POINT(@pointLat, @pointLon)
  
  -- 유역
  SELECT LIMIT 1 @BW_AREA_ID=AREA_ID, @BW_AREA_NAME=AREA_NAME
  FROM (SELECT ST_Intersects(geom,@pt) AS intpt, BW_CODE AS AREA_ID, BW_NAME AS AREA_NAME
    FROM BW_AREA_ST) RES_TABLE
  WHERE RES_TABLE.intpt > 0;

  IF (@@ERROR <> 0)
  BEGIN
   SET @BW_AREA_ID='000'
   SET @BW_AREA_NAME='ERROR'
  END
 
  INSERT INTO @ContainsData VALUES
   (@BW_AREA_ID, @BW_AREA_NAME)
  
  RETURN
END

    END$$

DELIMITER ;



No. Subject Author Date Views
9642 자동증가 MDF 파일이 언제 커졌는지.. 알고 싶습니다. [1] binipig 2016.12.06 2073
9641 ascii 문자만 보이게 쿼리문 구성할순 없나요? [1] 용크 2016.12.05 2198
9640 DB초보자, 최소값부터 최대값까지 증가 시키는 방법 [1] 꽃보다서준 2016.12.05 1942
9639 SQL Query 문의 입니다 [2] 손원일 2016.12.05 1521
9638 oracle 쿼리문 구성 관련 질문이 있습니다. 용크 2016.12.02 1505
9637 다음 쿼리를 홀수 짝수 구분하는 방법을 나머지로는 안되는건가요. 가리워진길 2016.12.02 3336
9636 테이블 반환 함수에 대한질문 입니다. [2] icham 2016.12.02 2238
9635 월별 누적 Sql문의 [3] 안산님아 2016.12.02 4383
9634 쿼리문 질문좀요.. [1] sql은너무어려워 2016.12.01 1984
9633 쿼리 조언 좀 부탁 합니다. [2] 죠리퐁 2016.12.01 3512
» mssql > mysql 마이그레이션 중 mysql function(함수) 생성에 문제 [1] 보리언니지현 2016.11.30 3534
9631 mssql 해당월의 마지막주 월요일부터 금요일까지 구하는 방법좀 부탁드려요 [3] mssl왕초초초보 2016.11.29 3400
9630 영업일 구하기 함수좀 문의 합니다. [3] 아싸라비아콜롬비아 2016.11.29 4768
9629 asp 에서 저장프로시저를 호출해서 사용하려고 합니다. [1] DOOLLY 2016.11.29 2961
9628 MSSQL Server 에이전트 자동생성 takeee 2016.11.29 1864
9627 failover 방식 2중화 설정시 소프트 웨어 셋팅... 질문 장성원_305526 2016.11.29 2379
9626 SSMS 2016 버전을 설치 했는데 라이선스 메세지가 나오는경우 켜니 2016.11.25 2400
9625 22022에러 해결방법 없을까요? 천운 2016.11.25 3584
9624 쿼리 어떻게 짜야할까요 [2] 구구구니 2016.11.25 2357
9623 "해당 버전이 706이므로 열 수 없습니다...." 하는 에러와 함께 mdf 파일 연결이 되지 않습니다. 도와주세요...ㅠㅠㅠ [1] 난키군 2016.11.24 50580





XE Login