SQL에서 큰 개체를 조작하기 위해 맞춤화된 서버측 스포츠 토토 베트맨은 다음에 나열되어 있습니다.표 33.1.
표 33.1. SQL 지향 대형 객체 함수
앞서 설명한 각 클라이언트 측 스포츠 토토 베트맨에 해당하는 추가 서버 측 스포츠 토토 베트맨이 있습니다. 실제로 대부분의 경우 클라이언트 측 스포츠 토토 베트맨은 동등한 서버 측 스포츠 토토 베트맨에 대한 단순한 인터페이스입니다. SQL 명령을 통해 호출하기에 편리한 것은 다음과 같습니다.lo_creat, lo_create, lo_unlink, lo_import및lo_export. 사용 예는 다음과 같습니다.
테이블 이미지 생성(
이름 텍스트,
래스터형
);
SELECT lo_creat(-1); -- 새로운 빈 대형 객체의 OID를 반환합니다.
SELECT lo_create(43213); -- OID 43213을 사용하여 대형 개체를 생성하려고 시도합니다.
SELECT lo_unlink(173454); -- OID가 173454인 대형 객체를 삭제합니다.
INSERT INTO 이미지(이름, 래스터)
VALUES('아름다운 이미지', lo_import('/etc/motd'));
INSERT INTO 이미지(이름, 래스터) -- 위와 동일하지만 사용할 OID를 지정합니다.
VALUES('아름다운 이미지', lo_import('/etc/motd', 68583));
SELECT lo_export(image.raster, '/tmp/motd') FROM 이미지
WHERE 이름 = '아름다운 이미지';
서버측lo_import그리고lo_export함수는 클라이언트측 아날로그와 상당히 다르게 동작합니다. 이 두 함수는 데이터베이스 소유 사용자의 권한을 사용하여 서버의 파일 시스템에서 파일을 읽고 씁니다. 따라서 기본적으로 해당 사용은 수퍼유저로 제한됩니다. 이와 대조적으로 클라이언트측 가져오기 및 내보내기 스포츠 토토 베트맨은 클라이언트 프로그램의 권한을 사용하여 클라이언트의 파일 시스템에서 파일을 읽고 씁니다. 클라이언트 측 함수에는 문제의 대형 개체를 읽거나 쓸 수 있는 권한을 제외하고 데이터베이스 권한이 필요하지 않습니다.
다음은 가능합니다그랜트서버측 사용lo_import그리고lo_export수퍼유저가 아닌 사용자에게도 작동하지만 보안에 미치는 영향을 신중하게 고려해야 합니다. 이러한 권한을 가진 악의적인 사용자는 이를 쉽게 슈퍼유저로 만들거나(예: 서버 구성 파일을 다시 작성하여) 데이터베이스 슈퍼유저 권한을 획득하지 않고도 서버의 나머지 파일 시스템을 공격할 수 있습니다.그러므로 이러한 권한을 가진 역할에 대한 액세스는 수퍼유저 역할에 대한 액세스만큼 조심스럽게 보호되어야 합니다.그럼에도 불구하고 서버측에서 사용하는 경우lo_import또는lo_export일부 일상적인 작업에 필요합니다. 전체 수퍼유저 권한이 있는 역할보다 이러한 권한이 있는 역할을 사용하는 것이 우발적인 오류로 인한 손상 위험을 줄이는 데 도움이 되므로 더 안전합니다.
스포츠 토토 베트맨lo_read그리고lo_write은(는) 서버측 호출을 통해서도 사용할 수 있지만 서버측 함수의 이름은 밑줄을 포함하지 않는다는 점에서 클라이언트측 인터페이스와 다릅니다. 이 함수를 다음과 같이 호출해야 합니다.읽어보세요그리고로우라이트.
문서에 올바르지 않은 내용이 있으면 일치하지 않습니다. 특정 스포츠 토토 베트맨에 대한 경험이 있거나 추가 설명이 필요한 경우 이용해주세요이 양식문서 문제를 보고합니다.