2013-12-09 1 views
0

asp.net 응용 프로그램에서 새 이름으로 기존 db의 복사본을 만들고 싶습니다. 어떻게해야합니까?asp.net 응용 프로그램에서 외부 SQL 스크립트 파일을 실행하는 방법. 중복 데이터베이스를 만들 수 있습니까?

나는 기존 데이터베이스의 스크립트를 가져 와서 새로운 데이터베이스를 만들 수 있다고 생각한다. Pls가 나에게 좋은 해결책을 제공합니다.

스크립트를 실행하는 동안 연결이 시간 초과없이 설정되어 있어도 시간 초과 예외가 발생합니다. 이렇게하는 것이 좋은 방법일까요?

+0

당신은 그 안에서 새로운 데이터베이스의 모든 테이블, 뷰 등을 작성하는 단일 SQL 스크립트를 생성 할 수 있습니다; SQL Enterprise Manager 나 (많은 노력을 들여) 코드별로 쉽게 생성 할 수 있습니다. 왜 이렇게하고 싶니? – sh1rts

+0

안녕하세요. 답변 감사합니다. 나는 dB의 스크립트 파일을 가지고있다. (또는 메모장 파일). 나는 주어진 이름으로 데이터베이스의 중복을 만들기 위해 ASP.NET 애플리케이션에서 그 파일을 읽고 싶다. – SRJ

답변

0

우선,이 코드는 asp.net 코드로 작성해야합니까? 그렇지 않으면 작업을보다 쉽게 ​​할 수있는 배치 파일을 만드는 것이 더 좋을 것입니다.

그러나 .net 코드를 작성하는 경우 새 형식의 데이터베이스 이름과 같은 정보를 캡처 한 다음 해당 Windows 양식을 클릭하고 명령을 실행하거나 배치 파일을 사용하여 새 이름으로 새 db를 만듭니다.

+0

답장을 보내 주셔서 감사합니다. dB의 .sql 파일이 있습니다. asp.net을 사용하고 있습니다. 해당 SQL 파일을 읽고 지정된 이름의 db 복사본을 만들 코드가 필요합니다. – SRJ

1

WinForms 앱에서와 마찬가지로 새 데이터베이스 이름을 캡처하여 유효성을 검사하고 스크립트를 웹 폼 또는 MVC 응용 프로그램에서 실행할 수 있습니다.

나는 당신이하고자하는 일을하지,하지만 헤이 그것은 당신의 시나리오이고 내가 :)

당신은 단순히 데이터베이스 이름을 대체 할 수 있어야한다 토큰 즉 DBNAMEGOESHERE 주장하는 사람입니다을 (사용자가 텍스트 상자에 입력 한 것과 상관없이) SQL 스크립트에 저장하고 SqlCommand를 사용하여 스크립트를 실행하십시오.

당신이보다 더 필요하면 알려주세요 ..

+0

안녕 Sh1rts. db를 만들었습니다. 그러나 db가 클 경우 스크립트를 실행하는 동안 TimeOut 오류가 발생합니다. Pls는 편집 된 질문에 주목합니다. – SRJ

+0

연결 문자열의 시간 초과를 늘리십시오. - http://forums.asp.net/t/1389167.aspx – sh1rts

+0

시간 제한을 설정했습니다. 어쩌면 자사의 쿼리, 교착 상태 등의 오류로 인해? 그렇다면 어떻게 해결할 수 있습니까? - 스크립트를 실행하는 대신 Db의 .mdf/.ldf 파일을 첨부하여 새 파일을 만들 수 있습니까? Pls 나에게 몇 가지 링크를 제공합니다. – SRJ