hanghwp 블로그에서 선정
1. ASP에서 SQL 데이터베이스 백업 및 복구 구현 방법!
답변: ASP 온라인 백업 SQL Server 데이터베이스:
1. 백업
<%
SQL="디스크에 데이터베이스 데이터베이스 이름 백업='"&Server.MapPath("backup")&""&"backuptext.dat"&"'"
cnn=Server.createobject("adodb.connection")을 설정하십시오.
cnn.open "드라이버={SQL Server};서버=서버 이름;uid=sa;pwd="
cnn.SQL 실행
오류 발생 시 다음 재개
오류<>0이면
response.write "오류:"&err.설명
또 다른
response.write "데이터 백업 성공!"
종료하면
%>
2. 회복
<%
SQL="디스크에서 데이터베이스 데이터베이스 이름 복원='"&Server.MapPath("backup")&""&"backuptext.dat"&"'"
cnn=Server.createobject("adodb.connection")을 설정하십시오.
cnn.open "드라이버={SQL Server};서버=서버 이름;uid=sa;pwd="
cnn.SQL 실행
오류 발생 시 다음 재개
오류<>0이면
response.write "오류:"&err.설명
또 다른
response.write "데이터 복구 성공!"
종료하면
%>
참고: 위의 내용은 디스크의 백업 디렉터리에 데이터를 백업하는 내용이며, 파일명은 backuptext.dat 입니다.
2. ASP에서 SQL 데이터베이스 구조를 수정할 수 있습니까?
답: ALTER TABLE
이름
ALTER TABLE — 테이블 속성 구문 변경
ALTER TABLE 테이블 [ * ]
ADD [COLUMN] 열 유형
ALTER TABLE 테이블 [ * ]
ALTER [ COLUMN ] 열 { SET DEFAULT 값 |
ALTER TABLE 테이블 [ * ]
RENAME [COLUMN] 열을 새 열로
ALTER 테이블 테이블
새 테이블로 이름 바꾸기
ALTER 테이블 테이블
ADD 테이블 제약 조건 정의
입력
테이블
www.downcodes.com 변경을 시도 중인 기존 테이블의 이름입니다.
열
기존 또는 새 열 이름입니다.
유형
새 열의 유형입니다.
새 열
기존 열의 새 이름입니다.
새 테이블
테이블의 새 이름입니다.
테이블 제약 조건 정의
테이블에 대한 새로운 제약 조건 정의입니다.
테이블
출력
에 대한 새 테이블 제약조건
바꾸다
이름이 변경된 열 또는 테이블에서 반환된 정보입니다.
오류
열이나 테이블이 존재하지 않는 경우 반환되는 정보입니다.
설명하다
ALTER TABLE은 기존 테이블의 정의를 변경합니다. ADD COLUMN 형식은 CREATE TABLE과 동일한 구문을 사용하여 테이블에 새 열/필드를 추가합니다. ALTER COLUMN 양식을 사용하면 열/필드에서 기본값(값)을 설정하거나 제거할 수 있습니다. 기본값(값)은 새로 삽입된 행에만 유효합니다. RENAME 절은 관련 테이블의 데이터에 영향을 주지 않고 테이블 또는 열/필드의 이름을 변경할 수 있습니다. 따라서 이 명령이 실행된 후에도 테이블이나 열/필드는 여전히 동일한 크기와 유형을 유지합니다. ADD 테이블 제약 조건 정의 절은 CREATE TABLE과 동일한 구문을 사용하여 테이블에 새 제약 조건을 추가합니다.
테이블의 속성을 변경하려면 테이블의 소유자여야 합니다.
알아채다
COLUMN 키워드는 중복되므로 생략할 수 있습니다.
"*"가 테이블 이름 뒤에 오면 명령이 테이블과 이 테이블보다 낮은 상속 수준을 가진 모든 테이블에서 작동한다는 의미이며, 이 속성(변경 사항)은 하위 테이블에 추가되거나 수정되지 않습니다. 하위 테이블의 상대 이름입니다. 이는 상위 테이블의 속성을 추가하거나 수정할 때 항상 수행되어야 합니다. 그렇지 않으면 상속 수준에서 다음과 같은 쿼리가
SELECT NewColumn FROM SuperClass*
하위 테이블은 상위 테이블보다 속성이 하나 적기 때문에 작동하지 않습니다.
현재 구현에서는 새 열/필드에 대한 기본값(값) 및 제약 조건 절이 무시됩니다. 나중에 ALTER TABLE의 SET DEFAULT 형식을 사용하여 기본값(값)을 설정할 수 있습니다. (기존 행을 기본값으로 업데이트하려면 UPDATE도 사용해야 합니다.)
현재 구현에서는 FOREIGN KEY 제약 조건만 테이블에 추가할 수 있습니다. 고유 제약 조건을 생성하거나 삭제하려면 고유 인덱스를 생성하세요(CREATE INDEX 참조). 검사 제약 조건을 추가하려면 CREATE TABLE 명령의 다른 매개변수를 사용하여 테이블을 다시 작성하고 다시 로드해야 합니다.
테이블 구조를 수정하려면 테이블의 소유자여야 합니다. 시스템 테이블 구조의 일부를 변경하는 것은 허용되지 않습니다. PostgreSQL 사용자 매뉴얼에는 상속에 대한 자세한 정보가 있습니다.
유효한 매개변수에 대한 설명은 CREATE TABLE 섹션을 참조하세요.
사용법 테이블에 VARCHAR 열을 추가합니다.
ALTER TABLE 배포자 ADD COLUMN 주소 VARCHAR(30);
기존 열 이름 바꾸기:
ALTER TABLE 배포자 RENAME COLUMN 주소 TO 도시;
기존 테이블 이름 바꾸기:
ALTER TABLE 유통업체 이름을 공급자로 변경합니다.
테이블에 외래 키 제약 조건을 추가합니다.
ALTER TABLE 분배기 ADD CONSTRAINT distfk FOREIGN KEY (주소) REFERENCES 주소(주소) MATCH FULL
호환성
SQL92ADD COLUMN 형식은 위에서 언급한 기본값(값)과 제약 조건을 제외하고 호환됩니다. ALTER COLUMN 형식은 완벽하게 호환됩니다.
SQL92는 Postgres가 현재 직접 지원하지 않는 ALTER TABLE에 대한 몇 가지 추가 기능을 선언합니다.
ALTER TABLE table DROP CONSTRAINT Constraint { RESTRICT |
테이블 제약 조건(예: 검사 제약 조건, 고유 제약 조건 또는 외래 키 제약 조건)을 추가하거나 삭제합니다. 고유 제약 조건을 생성 또는 삭제하고 이에 따라 고유 인덱스를 생성 또는 삭제하고 다른 유형의 제약 조건을 수정하려면 CREATE TABLE 명령의 다른 매개 변수를 사용하여 테이블을 다시 작성하고 다시 로드해야 합니다.
예를 들어, 테이블 분배자에 대한 제약 조건을 제거하려면:
CREATE TABLE temp AS SELECT * FROM distributions;
DROP TABLE 유통업체;
CREATE TABLE 배포자 AS SELECT * FROM temp;
드롭 테이블 온도;
ALTER TABLE 테이블 DROP [ COLUMN ] 열 { RESTRICT |
이전에는 기존 열을 삭제하려면 테이블을 다시 만들고 다시 로드해야 했습니다.
CREATE TABLE temp AS SELECT가 했던 것처럼, 도시 FROM 유통업체;
DROP TABLE 유통업체;
CREATE TABLE 배포자(
DECIMAL(3) DEFAULT 1을 수행했습니다.
이름 VARCHAR(40) NOT NULL,
);
INSERT INTO 유통업체 SELECT * FROM temp;
드롭 테이블 온도;
열/필드 및 테이블 이름 바꾸기는 PostgreSQL 확장입니다. SQL92는 이러한 기능을 제공하지 않습니다.