国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

nvarchar和varchar的轉換問題

2024-07-21 02:35:38
字體:
來源:轉載
供稿:網友

  java編程,將表中的nvarchar記錄導出存儲到xml文件中,利用xdk的函數導出后,發現xml文件中存儲的表中的nvarchar字段中的中文變成了二進制碼,再將xml文件導入時報錯。 所以我想將nvarchar先轉換成varchar類型,導出后,再將varchar導回到nvarchar類型導入,請教兩種類型的轉換函數時什么?
  
  Specifying the USING CHAR_CS argument converts text into the database character set. The output datatype is VARCHAR2.
  
  Specifying the USING NCHAR_CS argument converts text into the national character set. The output datatype is NVARCHAR2.
  
  Example 1
  CREATE TABLE t1 (char_col  CHAR(20),
  nchar_col nchar(20));
  INSERT INTO t1
  VALUES ('Hi', N'Bye');
  SELECT * FROM t1;
  
  CHAR_COL     NCHAR_COL
  --------     ---------
  Hi           Bye
  
  Example 2
  UPDATE t1 SET
  nchar_col = TRANSLATE(char_col USING NCHAR_CS);
  UPDATE t1 SET
  char_col = TRANSLATE(nchar_col USING CHAR_CS);
  SELECT * FROM t1;
  
  CHAR_COL     NCHAR_COL
  --------     ---------
  Hi           Hi
  
  Example 3
  UPDATE t1 SET
  nchar_col = TRANSLATE('deo' USING NCHAR_CS);
  UPDATE t1 SET
  char_col = TRANSLATE(N'deo' USING CHAR_CS);
  SELECT * FROM t1;
  
  CHAR_COL     NCHAR_COL
  --------     ---------
  deo          deo
  
  表不多的話可以這樣
  
  //創建一個新表,并把數據轉換為varchar2
  create table newtbname as select col1,translate(col2 using char_cs),col3 from tbname;
  rename tbname to tbname_temp;//將原先的表重新命名
  rename newtbname to tbname;//把新創建的表改名為原先的表名
  這樣就轉換過來了
  作完后,把tbname drop掉,rename tbname_temp to tbname就行了
  
  這樣應該可以解決問題

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 西盟| 铜山县| 扬州市| 奇台县| 驻马店市| 衡东县| 额敏县| 普宁市| 治县。| 北宁市| 达尔| 洱源县| 天镇县| 醴陵市| 邵阳县| 百色市| 普陀区| 襄垣县| 灌南县| 房山区| 凌云县| 留坝县| 商丘市| 甘泉县| 曲阳县| 永福县| 蒙自县| 黄石市| 于都县| 简阳市| 德令哈市| 且末县| 托克逊县| 滕州市| 布尔津县| 贵南县| 安仁县| 太仓市| 醴陵市| 河池市| 北碚区|