2012-05-10 4 views
0

필드 중 하나에 stored procedure (items.calcPrice)이 더 이상 존재하지 않아 행을 복제 할 수없는 테이블이 있습니다.테이블에서 저장 프로 시저를 삭제하려면 어떻게해야합니까?

다음은 MySQL의 명령입니다 :

INSERT INTO items (folder_id) 
VALUES (56) 

오류라는 메시지가 "Couldn't write row. FUNCTION items.calcPrice does not exist."

는 어떻게 확인하고 내 테이블에이 stored procedure을 삭제합니까? 나는 "가격"값을 가진 2 개의 필드를 가지고 있으므로이 procedure 필드가 작동하는지 잘 모르겠습니다.

+0

그 오류를 일으킨다는 실행중인 문을 붙여주세요 :

트리거를 삭제합니다. – eggyal

+0

mysqlPro를 사용하기 때문에 새 행을 만들려면 버튼을 클릭해야하지만 SQL 명령을 사용하여 재현하는 데는 초를 주어야합니다 ... –

+0

해당 테이블에 삽입 트리거가 있습니까? 'Show TRIGGERS WHERE Event = 'INSERT'AND Table = 'mytable''? – eggyal

답변

1

채팅에 대한 토론을 마치면이 테이블에 Items_Trigger이라는 BEFORE INSERT 트리거가 정의되어있어 질문에 대한 기능을 호출하려고합니다.

DROP TRIGGER Items_Trigger; 
+1

트리거가 왜 존재하는지 알 때까지 트리거를 삭제하지 마십시오. – HLGEM

+1

@HLGEM : 동의 함 -이 경우 우리는 채팅에서 "우리는 더 이상 필요하지 않은 것들을 모두 지울 수 있습니다."라고 말했고, 추가로 "우리는 필요하지 않은 오래된 논리입니다. 더 이상 * ". – eggyal

+1

나는 방아쇠가 더 이상 필요 없다는 것을 모르는 경우에 미래의 독자들이 위험한 습관이라는 것을 알고 싶었다. – HLGEM

관련 문제