오늘, 편집자는 ASP에서 SQL의 백업 및 복구에 대한 자세한 자습서를 공유 할 것입니다. 관심있는 친구, 편집자와 함께 배우자!
1. 백업
sql = "backupdatabase 데이터베이스 이름 todisk = '"& server.mappath ( "backup") & "/"& "backuptext.dat"& "'"
setcnn = server.createObject ( "adodb.connection")
cnn.open "driver = {sqlserver}; server = 서버 이름; uid = sa; pwd ="
cnn.executesql
onerrorresumenext
iferr0then
응답. "오류 :"& err.descripting
또 다른
응답. "데이터 백업이 성공했습니다!"
endif
%>
2. 회복
SQL = "RestoredAtabase 데이터베이스 이름 Fromdisk = '"& server.mappath ( "백업") & "/"& "backuptext.dat"& "'" "
setcnn = server.createObject ( "adodb.connection")
cnn.open "driver = {sqlserver}; server = 서버 이름; uid = sa; pwd ="
cnn.executesql
onerrorresumenext
iferr0then
응답. "오류 :"& err.descripting
또 다른
응답. "데이터 복구 성공!"
endif
%>
참고 : 위의 진술은 데이터를 디스크의 백업 디렉토리로 백업하는 것입니다. 파일 이름은 BackupText.dat입니다.
2. ASP에서 SQL 데이터베이스 구조를 수정할 수 있습니까?
답 : Altertable
이름
ALTERTABLE - 변화 테이블 속성
문법
Altertabletable [*]
[column] columntype을 추가하십시오
Altertabletable [*]
ALTER [column] 열 {setDefaultValuedRopDefault}
Altertabletable [*]
[열] ColumnToneWcolumn의 이름을 바꿉니다
AltertableTable
Renametonewtable
AltertableTable
AddTableConstraintDefinition
입력
테이블
변경을 시도한 기존 테이블의 이름.
열
기존 또는 새 열 이름.
유형
새 열의 유형.
Newcolumn
기존 열의 새 이름.
NEWTABLE
테이블의 새 이름.
TablectraintDefinition
테이블에 대한 새로운 제약 조건 정의.
NewTableconstraintforthetable
산출
바꾸다
이름이 변경된 열이나 테이블에서 반환 된 정보.
오류
열이나 테이블이 존재하지 않으면 반환 된 정보가 반환됩니다.
설명하다
Altertable은 기존 테이블의 정의를 변경합니다. AddColumn 양식은 CreateTable과 동일한 구문을 사용하여 테이블에 새 열/필드를 추가합니다. AlterColumn 양식을 사용하면 열/필드에서 기본값 (값)을 설정하거나 삭제할 수 있습니다. 기본값 (값)은 새로 삽입 된 행에만 유효합니다. 이름 바꾸기 조항은 관련 테이블의 데이터에 영향을 미치지 않고 테이블 또는 열/필드의 이름을 변경할 수 있습니다. 따라서이 명령이 실행 된 후에 테이블 또는 열/필드의 크기와 유형이 동일합니다. AddTableConstraintDefinition 조항은 CreateTable과 동일한 구문을 사용하여 테이블에 새로운 제약 조건을 추가합니다.
테이블의 속성을 변경하려면 테이블의 소유자 여야합니다.
알아채다
열 키워드는 중복되어 생략 할 수 있습니다.
"*"뒤에 테이블 이름이 뒤 따르는 경우 명령은 테이블에서 작동하는 것임을 의미합니다. 기본적으로 속성 (변경)은 하위 테이블에 추가되지 않거나 하위 테이블의 관련 이름이 수정됩니다. 우수한 테이블의 속성을 추가하거나 수정할 때 항상 그렇습니다 (번역 참고 : 상속 레벨이 높은 표). 그렇지 않으면 상속 레벨의 쿼리는 다음과 같이 수행됩니다.
selectNewColumnfromsUperClass*
하위 테이블은 이전 테이블보다 덜 속성을 가지기 때문에 작동하지 않습니다.
현재 구현에서는 새 열/필드의 기본 (값) 및 제약 조항이 무시됩니다. 그런 다음 setDefault의 altertable 형식을 사용하여 기본값 (값)을 설정할 수 있습니다. (또한 기존 행을 기본값으로 업데이트하려면 업데이트를 사용해야합니다.)
현재 구현에서는 외국 키 제약 만 표에 추가 할 수 있습니다. 고유 한 제약 조건을 생성하거나 삭제하려면 고유 한 인덱스를 만들 수 있습니다 (CreateIndex 참조). 확인 (확인) 제약 조건을 추가하려면 Createtable 명령의 다른 매개 변수에서 사용하는 매개 변수를 사용하여 테이블을 재건하고 과부하해야합니다.
테이블의 구조를 수정하려면 테이블의 소유자 여야합니다. 시스템 테이블 구조의 어느 부분도 변경되지 않습니다. PostgreSQL 사용자 설명서에는 상속에 대한 자세한 정보가 있습니다.
유효한 매개 변수에 대한 자세한 내용은 CreateTable 섹션을 참조하십시오.
용법
테이블에 varchar 열을 추가하십시오.
AltertableditributorsAddColumnAddressVarchar (30);
기존 열의 이름 바꾸기 :
Altertableditributorsrenamecolumnaddresstocity;
기존 테이블의 이름 바꾸기 :
AltertabledipributorsrenametoSuppliers;
테이블에 외래 키 제약 조건을 추가하십시오.
altertableditributorsaddconstraintdistfkforeignkey (주소) 참조 addresses (주소) mruppull
호환성
SQL92addColumn 양식은 위에서 언급 한 기본값 (값) 및 제약 조건을 제외하고 호환됩니다. Altercolumn 양식은 완전히 호환됩니다.
SQL92는 Postgres가 현재 Altertable을 직접 지원하지 않는 몇 가지 추가 기능을 선언합니다.
altertabletabledropconstraintconstraint {grongcascade}
테이블에 대한 제약 조건 (예 : 점검 제약, 고유 한 제약 조건 또는 외래 키 제약 조건)을 추가하거나 삭제합니다. 고유 한 제약 조건을 생성하거나 삭제하려면 그에 따라 고유 한 인덱스를 작성하거나 삭제하여 다른 유형의 제약 조건을 수정하려면 CreateTable 명령의 다른 매개 변수를 사용하여 테이블을 다시 빌드하고 과부하해야합니다.
예를 들어, 테이블 분배기의 모든 제약 조건을 삭제하십시오.
CreateTableTempAsSelect*의 분산기;
Droptabledistributors;
CreateTebledipributorsAsSelect*에서 fromtemp;
droptabletemp;
AltertableTabledRop [열] 열 {restrictCascade}
기존 열을 삭제하기 전에 테이블을 다시 만들고 다시로드해야합니다.
CreateTableTempAsSelectDID, Cityfromdiplications;
Droptabledistributors;
CreateTedabledipributors (
diddecimal (3) default1,
Namevarchar (40) Notnull,
);
insertIntOdopributorsSelect*fromTemp;
droptabletemp;
열/필드 이름 이름 바꾸기 및 테이블 이름은 PostgreSQL 확장자입니다. SQL92는 이것들을 제공하지 않습니다.
위는 ASP에서 SQL의 백업 및 복구에 대한 자세한 자습서입니다. 나는 당신이 그것에 대해 배웠다고 믿습니다. 더 많은 관련 컨텐츠는 Wuxin Technology Channel에 계속주의를 기울이십시오.