Dreamweaver에서 ASP 명령을 사용하여 데이터베이스를 수정하고 저장 프로시저를 추가 및 실행하는 방법에 대해 학습합니다.
Dreamweaver의 현재 버전 이후로 사용자 인터페이스가 간소화되었습니다. 따라서 이 문서에 설명된 옵션 중에 Dreamweaver의 현재 버전에 없는 옵션이 있을 수 있습니다. 자세한 내용은 이 문서를 참조하십시오.
ASP 명령 오브젝트는 데이터베이스에서 특정 작업을 수행하는 서버 오브젝트입니다. 오브젝트에는 레코드세트를 반환하거나 데이터베이스에서 레코드를 삽입, 업데이트 또는 삭제하는 SQL 문 등 모든 유효한 SQL 문을 넣을 수 있습니다. 명령 오브젝트는 SQL 문이 테이블 열을 추가하거나 삭제할 경우 데이터베이스의 구조를 변경할 수 있습니다. 또한 명령 오브젝트를 사용하여 데이터베이스에서 저장 프로시저를 실행할 수도 있습니다.
명령 오브젝트는 애플리케이션 서버가 하나의 컴파일된 오브젝트를 재사용해 명령을 여러 번 실행할 수 있다는 점에서 재사용 가능합니다. 명령을 재사용할 수 있도록 하려면 다음 VBScript 문처럼 [명령] 오브젝트의 [준비된 오브젝트] 속성을 true로 설정합니다.
mycommand.Prepared = true
명령을 여러 번 사용하려는 경우 하나의 컴파일된 오브젝트를 사용하면 데이터베이스 작업의 효율성이 더욱 높아집니다.
준비 명령이 지원되지 않는 데이터베이스도 있습니다. 데이터베이스에서 준비된 오브젝트 명령을 지원하지 않을 경우 이 속성을 true로 설정하면 오류가 반환됩니다. 뿐만 아니라, 명령 준비 요청을 무시하고 [준비된 오브젝트] 속성을 false로 설정합니다.
명령 오브젝트는 ASP 페이지에 스크립트로 작성되지만 Dreamweaver를 사용하면 ASP 코드를 작성하지 않고도 명령 오브젝트를 만들 수 있습니다.
Dreamweaver를 사용하여 데이터베이스에서 레코드를 삽입, 업데이트 또는 삭제하는 ASP 명령 오브젝트를 만들 수 있습니다. 명령 오브젝트에 데이터베이스에서 작업을 수행하는 SQL 문이나 저장 프로시저를 제공합니다.
Dreamweaver는 선택된 작업 유형에 따라 해당 SQL 문의 시작 부분을 입력합니다. 예를 들어 [삽입]을 선택하면 다음과 같은 대화 상자가 나타납니다.
데이터베이스를 수정하는 SQL 문 작성에 대한 자세한 내용은 Transact-SQL 설명서를 참조하십시오.
다음 예제는 세 개의 SQL 변수가 포함된 Insert 문입니다. 이들 변수의 값은 [변수] 영역의 [런타임 값] 열에서 정의한 것처럼 페이지에 전달되는 URL 매개 변수가 제공합니다.
[크기] 값을 가져오려면 Dreamweaver에서 [데이터베이스] 패널을 사용합니다. [데이터베이스] 패널에서 데이터베이스를 찾은 다음 확장합니다. 그런 다음 작업할 테이블을 찾아서 확장합니다. 테이블에 필드에 대한 크기가 나열됩니다. 예를 들어 ADDRESS(WChar 50)가 표시될 수 있습니다. 이 예에서 50은 크기입니다. 데이터베이스 애플리케이션에서 크기를 찾을 수도 있습니다.
숫자, 불린 및 날짜/시간 데이터 형식에서는 크기로 -1이 항상 사용됩니다.
[유형] 값을 결정하려면 다음 표를 참조하십시오.
데이터베이스의 유형 |
Dreamweaver의 유형 |
크기 |
---|---|---|
숫자(MS Access, MS SQL Server, MySQL) |
실수(Double) |
-1 |
불린, 예/아니요(MS Access, MS SQL Server, MySQL) |
실수(Double) |
-1 |
날짜/시간(MS Access, MS SQL Server, MySQL) |
DBTimeStamp |
-1 |
다른 모든 텍스트 필드 유형(MySQL 텍스트 데이터 형식 char, varchar 및 longtext 포함) |
LongVarChar |
데이터베이스 테이블 검사 |
텍스트(MS Access) 또는 nvarchar, nchar(MS SQL Server) |
VarWChar |
데이터베이스 테이블 검사 |
메모(MS Access), ntext(MS SQL Server) 또는 대량의 텍스트를 지원하는 필드 |
LongVarWChar |
1073741823 |
SQL 변수의 유형과 크기에 대한 자세한 내용은 www.adobe.com/go/4e6b330a를 참조하십시오.
Dreamweaver에서는 ASP 코드를 페이지에 삽입합니다. 이 코드가 서버에서 실행되면 데이터베이스에 레코드를 삽입, 업데이트 또는 삭제하는 명령이 만들어집니다.
기본적으로 코드는 [명령] 오브젝트의 [준비된 오브젝트] 속성을 true로 설정합니다. 그러면 애플리케이션 서버는 명령이 실행될 때마다 하나의 컴파일된 오브젝트를 계속 재사용합니다. 이 설정을 변경하려면 코드 보기로 전환한 다음 [준비된 오브젝트] 속성을 false로 변경합니다.
서버 비헤이비어를 사용하여 데이터베이스를 수정하는 페이지를 구성할 수도 있지만 저장 프로시저, ASP 명령 오브젝트 등의 데이터베이스 조작 오브젝트를 사용하여 페이지를 구성할 수도 있습니다.
저장 프로시저는 데이터베이스를 대상으로 특정 작업을 수행하는 재사용 가능한 데이터베이스 항목입니다. 저장 프로시저에는 레코드를 삽입, 업데이트 또는 수정할 수 있는 SQL 코드도 있습니다. 또한 저장 프로시저는 데이터베이스 자체의 구조도 변경할 수 있습니다. 예를 들어 저장 프로시저를 사용하여 테이블 열을 추가하거나 테이블을 삭제할 수도 있습니다.
저장 프로시저는 다른 저장 프로시저를 호출할 수 있음은 물론, 입력 매개 변수를 사용할 수 있고 여러 값을 출력 매개 변수 형태로 호출 프로시저에 반환할 수도 있습니다.
저장 프로시저는 하나의 컴파일된 프로시저로 여러 번의 데이터베이스 작업을 수행할 수 있다는 점에서 재사용이 가능합니다. 데이터베이스 작업을 여러 번 실행해야 한다거나 동일한 작업을 여러 애플리케이션에서 실행해야 하는 경우에는 저장 프로시저를 사용하면 데이터베이스 작업의 효율성을 높일 수 있습니다.
MySQL 및 Microsoft Access 데이터베이스는 저장 프로시저를 지원하지 않습니다.
저장 프로시저를 사용하여 데이터베이스를 수정할 수 있습니다. 저장 프로시저는 데이터베이스를 대상으로 특정 작업을 수행하는 재사용 가능한 데이터베이스 항목입니다.
저장 프로시저를 사용하여 데이터베이스를 수정하려면 저장 프로시저에 어떠한 방식으로든 데이터베이스를 수정하는 SQL 문이 들어 있어야 합니다. 데이터베이스에 저장 프로시저를 만들어 저장하려면 데이터베이스 설명서와 Transact-SQL 설명서를 참조하십시오.
Dreamweaver가 자동으로 모든 매개 변수를 채웁니다.
[저장 프로시저 변수 편집] 대화 상자가 나타납니다. 편집할 변수의 이름이 [이름] 상자에 나타납니다.
모든 저장 프로시저 입력 매개 변수에 테스트 값을 입력해야 합니다.
팝업 메뉴에서 방향을 선택합니다. 저장 프로시저는 입력 값, 출력 값 또는 입출력 값 모두를 사용할 수 있습니다.
팝업 메뉴에서 SQL 유형을 선택합니다. 반환 변수, 런타임 값 및 테스트 값을 입력합니다.
각 저장 프로시저 매개 변수 반환값에 해당 페이지 매개 변수를 입력해야 합니다. 해당 반환값이 없으면 페이지 매개 변수를 추가하지 마십시오.
필요한 경우 다시 플러스(+) 버튼을 클릭하여 다른 페이지 매개 변수를 추가합니다.
Dreamweaver가 저장 프로시저를 실행하며, 레코드세트가 있을 경우 이를 표시합니다.
저장 프로시저가 레코드세트를 반환하고 매개 변수를 사용할 경우, 저장 프로시저를 테스트하려면 [변수] 상자의 [기본값] 열에 값을 입력해야 합니다.
다른 테스트 값을 사용하면 다른 레코드세트가 생성됩니다. 테스트 값을 변경하려면 [매개 변수]의 [편집] 버튼을 클릭한 후 테스트 값을 변경하거나 [페이지 매개 변수]의 [편집] 버튼을 클릭한 후 기본값을 변경합니다.
상자를 닫으면 Dreamweaver가 페이지에 ColdFusion 코드를 삽입합니다. 이 코드는 서버에서 실행될 때 데이터베이스의 저장 프로시저를 호출합니다. 그러면 저장 프로시저는 레코드 삽입 등의 데이터베이스 작업을 수행합니다.
저장 프로시저가 매개 변수를 사용할 경우, 매개 변수 값을 수집하여 저장 프로시저가 포함된 페이지에 전송하는 페이지를 만들 수 있습니다. 예를 들어 URL 매개 변수 또는 HTML 양식을 사용하여 사용자로부터 매개 변수 값을 수집하는 페이지를 만들 수 있습니다.
ASP 페이지에서 저장 프로시저를 실행하려면 페이지에 명령 오브젝트를 추가해야 합니다. 명령 객체에 대한 자세한 내용은 ASP 명령 객체 정보를 참조하십시오.
[명령] 대화 상자가 나타납니다.
이때, RETURN_VALUE 변수에 대한 매개 변수는 입력할 필요가 없습니다.
대화 상자를 닫으면 페이지에 ASP 코드가 삽입됩니다. 이 코드를 서버에서 실행하면 데이터베이스의 저장 프로시저를 실행하는 명령 오브젝트가 만들어집니다. 그러면 저장 프로시저는 레코드 삽입 등의 데이터베이스 작업을 수행합니다.
기본적으로 이 코드는 [명령] 오브젝트의 [준비된 오브젝트] 속성을 true로 설정합니다. 그러면 애플리케이션 서버는 저장 프로시저가 실행될 때마다 하나의 컴파일된 오브젝트를 계속 재사용합니다. 명령을 여러 번 사용할 예정이라면 하나의 컴파일된 오브젝트를 사용하여 데이터베이스 작업의 효율성을 높일 수 있습니다. 하지만 명령을 한두 번만 사용할 경우 컴파일된 오브젝트를 사용하면 명령을 컴파일하기 위해 시스템이 멈춰야 하므로 웹 애플리케이션이 느려질 수 있습니다. 설정을 변경하려면 코드 보기로 전환한 다음 [준비된 오브젝트] 속성을 false로 변경합니다.
준비 명령이 지원되지 않는 데이터베이스도 있습니다. 데이터베이스에서 준비 명령을 지원하지 않을 경우 이 페이지를 실행하면 오류 메시지가 발생합니다. 코드 보기로 전환한 다음 [준비된 오브젝트] 속성을 false로 변경합니다.
저장 프로시저가 매개 변수를 사용할 경우, 매개 변수 값을 수집하여 저장 프로시저가 포함된 페이지에 전송하는 페이지를 만들 수 있습니다. 예를 들어 URL 매개 변수 또는 HTML 양식을 사용하여 사용자로부터 매개 변수 값을 수집하는 페이지를 만들 수 있습니다.
내 계정 로그인