sql修改資料 oracle修改資料庫字符集

2021-10-11 23:15:27 字數 1414 閱讀 6582

1.檢視資料庫字符集

資料庫伺服器字符集:

select* from nls_database_parameters;

其**於props$,是表示資料庫的字符集。

客戶端字符集環境:

select* from nls_instance_parameters;

其**於v$parameter,表示客戶端的字符集的設定,可能是引數檔案,環境變數或者是登錄檔

會話字符集環境:

select* from nls_session_parameters;

其**於v$nls_parameters,表示會話自己的設定,可能是會話的環境變數或者是alter session完成,如果會話沒有特殊的設定,將與nls_instance_parameters一致。

2.修改字符集

字符集可以通過alter database來修改字符集,但也只限於子集到超集,不建議修改props$表,否則可能導致嚴重錯誤。

例如:修改資料庫服務端字符集為:zhs16gbk

sql>shutdownimmediate

sql>startupmount

sql>altersystem enable restricted session;

sql>altersystem set job_queue_processes=0;

sql>altersystem set aq_tm_processes=0;

sql>alterdatabase open;

sql>alterdatabase character set zhs16gbk;

若出現ora-12721的錯誤(如下:)使用internal_use可以跳過超集的檢查:

error at line1:ora-12721: operation cannot execute when other sessions are active

sql>alterdatabase character set internal_use zhs16gbk;

sql>shutdownimmediate

sql>startup

nls_nchar_characterset與nls_characterset的區別

nls_characterset為資料庫的字符集,影響資料庫中的varchar與clob等字段中的值

nls_nchar_characterset為國家字符集,影響資料庫中的nvarchar與nclob等字段中的值。

如將資料庫中nls_nchar_characterset的utf8修改為al16utf16:

SQL修改資料

關聯式資料庫的基本操作就是增刪改查,即crud create retrieve update delete。其中,對於查詢,我們已經詳細講述了select語句的詳細用法。而對於增 刪 改,對應的sql語句分別是 insert 插入新記錄 update 更新已有記錄 delete 刪除已有記錄。ins...

SQL批量修改資料

1 批量替換 期中的年份 以替換為2019年為例 update 資料表名 set 期時間字段 stuff convert nvarchar 23 期時間字段,120 1,4,2019 2 批量替換 期中的 份 以替換為6 為例 update 資料表名 set 期時間字段 stuff convert ...

SQL基礎 修改資料 INSERT

向資料庫中插入一條新紀錄時,就必須使用insert語句 語法insert into 表 欄位1 欄位2,values 值1,值2,students表 例項 向students表插入一條新紀錄 insert into students class id,name,gender,score values...