2012-05-10 5 views
0

insert 명령을 사용하여 데이터베이스에 행을 추가하려고합니다.삽입 명령이 데이터베이스의 오래된 행을 삭제하는 이유

성공적으로 행을 추가하지만 명령을 실행 한 후에 데이터베이스의 이전 행이 삭제되었습니다!

Dim connetionString As String 
        Dim cnn As SqlConnection 
        Dim cmd As SqlCommand 
        Dim sql As String 
        connetionString = "Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Datab1.mdf;Integrated Security=True;User Instance=True" 


        sql = "INSERT INTO Table1 VALUES ('e', 'e')"  


        cnn = New SqlConnection(connetionString) 
        Try 
            cnn.Open() 
            cmd = New SqlCommand(sql, cnn) 
            cmd.ExecuteNonQuery()  

            cmd.Dispose() 
            cnn.Close() 
            MsgBox(" ExecuteNonQuery in SqlCommand executed !!") 
        Catch ex As Exception 
            MsgBox(ex.Message) 
        End Try 

무엇이 잘못 되었나요?

+0

을 잘못된 데이터베이스보고 있지 않습니까? 연결 문자열에 Datab1.mdf가 첨부됩니다. 삽입 후에 검사 할 DB가 아닌가? –

답변

1

이전 행을 삭제하려는이 테이블에서 생성 된 트리거를 찾습니다. 여기

enter image description here

신속하게 데이터베이스에 트리거를 갖는 테이블을 나열 할 경우, 어떻게 그렇게 할 수있다 :

USE [YourDB] 

SELECT 

OBJECT_NAME(parent_id) AS TableName, 

name AS TriggerName, 

create_date AS CreationDate, 

modify_date AS ModifyDate 

FROM sys.triggers 
+0

남자 무슨 뜻 이죠 .. 내가 이해할 수 없다. – ebrahim

+0

이 테이블에 기존 트리거가있을 수 있으며 .net 코드에서 문을 삽입하면이 트리거가 자동으로 실행됩니다. 그래서 내 게시물에 주어진 쿼리를 실행하고 트리거가 생성되었는지 여부를 확인하십시오. –

+0

범인 방아쇠를 찾았습니까? 여전히 문제가 있는지 물어보십시오. –

관련 문제