Oracle에서는 "ALTER DATABASE" 문자 집합 문을 사용하여 문자 집합을 변환할 수 있습니다. 구문 형식은 "ALTER DATABASE [db_name] CHARACTER SET new_character_set;"입니다.
이 튜토리얼의 운영 환경: Windows 7 시스템, Oracle 11g 버전, Dell G3 컴퓨터.
Oracle-문자 집합 변환
문자 집합은 특정 문자 인코딩 체계에 따라 특정 기호 집합에 할당된 다양한 숫자 코드 집합입니다.
일상적인 사용에서는 서버와 클라이언트 문자 집합이 일관되어야 합니다.
--服务端 select * from nls_database_parameters; --客户端 SELECT USERENV('LANGUAGE') FROM DUAL;
데이터베이스 문자 집합 조정에 가장 일반적으로 사용되는 방법은 ALTER 명령과 전체 내보내기 및 가져오기입니다.
첫 번째 ALTER DATABASE 문자 집합 문은 문자 집합을 마이그레이션하는 가장 빠른 방법이지만 특별한 상황에서만 사용할 수 있습니다.
ALTER DATABASE 문자 집합 문은 데이터 변환을 수행하지 않으므로 새 문자 집합이 현재 문자 집합의 엄격한 상위 집합인 경우에만 사용할 수 있습니다.
--ALTER DATABASE字符集语句的语法如下,db_name为可选项: ALTER DATABASE [db_name] CHARACTER SET new_character_set;
두 번째
데이터 펌프(EXPDP/IMPDP) 방법은 비용이 더 많이 들고 시간이 많이 걸리며 많은 리소스를 차지하며 마이그레이션 중에 데이터 잘림 및 문자가 발생하는지 확인하기 위해 마이그레이션 중에 데이터를 스캔해야 합니다. 마이그레이션 설정 변환 오류입니다.
데이터베이스 문자 집합 마이그레이션에는 데이터 스캐닝과 데이터 변환의 두 단계가 있습니다.
문자 집합 검색 도구를 사용하여 데이터베이스 문자 집합을 변경하기 전에 필요한 작업량을 결정하세요.
Data Pump를 사용하여 스크립트 예제를 가져오고 내보냅니다. 스크립트는 데이터베이스 서버에서 실행되어야 합니다.
--查看管理员目录 确认导出文件位置路径 SELECT * FROM dba_directories; --expdp导出 带有条件 expdp 用户/密码@服务名 directory=DATA_PUMP_DIR dumpfile=数据文件文件名.dmp logfile=日志文件文件名.log tables=导出表名 query='" where lsh in (select lsh from table_1 where code !='1' and flag='1')"' CONTENT选项可选导出结构或数据 导出格式默认为.dmp--impdp导入 导入时重命名 存在表则增加数据 主键重复数据忽略 导入时也可以限定导入时所属表空间 impdp 用户/密码@服务名 directory=DATA_PUMP_DIR dumpfile=数据文件文件名.dmp REMAP_TABLE =导出用户名.导出表名:导入表名 TABLE_EXISTS_ACTION=append data_options=skip_constraint_errors
권장 튜토리얼: "Oracle Tutorial"
위 내용은 오라클에서 문자셋을 변환하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!