Oracle修改欄位類型方法總結

来源:http://www.cnblogs.com/yuyuchen/archive/2017/12/22/8087432.html
-Advertisement-
Play Games

有一個表名為tb,欄位段名為name,數據類型nchar(20)。1、假設欄位數據為空,則不管改為什麼欄位類型,可以直接執行:alter table tb modify (name nvarchar2(20));2、假設欄位有數據,則改為nvarchar2(20)可以直接執行:alter table ...


有一個表名為tb,欄位段名為name,數據類型nchar(20)。

1、假設欄位數據為空,則不管改為什麼欄位類型,可以直接執行:
alter table tb modify (name nvarchar2(20));

2、假設欄位有數據,則改為nvarchar2(20)可以直接執行:
alter table tb modify (name nvarchar2(20));

3、假設欄位有數據,則改為varchar2(40)執行時會彈出:“ORA-01439:要更改數據類型,則要修改的列必須為空”,這時要用下麵方法來解決這個問題

/*修改原欄位名name為name_tmp*/
alter table tb rename column name to name_tmp;

/*增加一個和原欄位名同名的欄位name*/
alter table tb add name varchar2(40);

/*將原欄位name_tmp數據更新到增加的欄位name*/
update tb set name=trim(name_tmp);

/*更新完,刪除原欄位name_tmp*/
alter table tb drop column name_tmp;

總結:
1、當欄位沒有數據或者要修改的新類型和原類型相容時,可以直接modify修改。
2、當欄位有數據並用要修改的新類型和原類型不相容時,要間接新建欄位來轉移。

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • rm (選項)(參數) 刪除文件或文件夾,無法恢復-f:強制刪除文件或目錄 -i:刪除已有文件或目錄之前先詢問用戶是否刪除,預設就是 rm -i -r或-R:遞歸處理,將指定目錄下的所有文件與子目錄一併處理刪除-v:顯示刪除的過程例: 1.創建文件夾後刪除他,每一次都詢問是否刪除 2.在剛剛創建的文 ...
  • 當產品要發佈之前,都會進行反覆的測試輸入,比如:測試按鍵,遙控,觸摸等等. 當出現bug時,就還需要不停地找規律,修改程式,直到修複成功,會顯的非常麻煩 答: 可以通過之前在35.Linux-分析並製作環形緩衝區里學的,使用myprintf()保存到環形緩衝區. 當出錯時,直接可以通過緩衝區里的數據 ...
  • mkdir (選項)(參數) 創建文件夾-m:創建文件夾的同時,賦予其許可權-p:若創建目錄的上層不存在時,一併創建出來-v:顯示創建的過程創建多個目錄的時候,用空格隔開 rmdir (選項)(參數) 刪除文件夾-p:刪除一個文件夾之後,假如該文件夾上層也是空的,一併把上層文件夾刪掉-v:顯示刪除的過 ...
  • 目錄: 1.linux的前世今生. 2.企業如何選擇linux系統? 3.如何在虛擬機上安裝linux系統?搭建學習環境. 1.linux的前世今生. 1).起源:先是貝爾實驗室的Unix系統,因為各家對於自己的硬體做了定製的Unix系統,但是硬體太貴,很多人用不起,出於教學目的,芬蘭的教授譚邦寧, ...
  • 目錄: 1.有哪些分類?市面上有哪些常見的類型. 2.伺服器的組成部分. 3.各個部分的功能1.有哪些分類?市面上有哪些常見的類型.互聯網公司伺服器品牌:DELL(大多數公司),HP,IBM(百度),浪潮,聯想,航天聯志. DELL:1U高度=4.45cm 2010年以前:1U 1850,1950. ...
  • 一、Apache的下載 1、點擊鏈接http://httpd.apache.org/download.cgi,找到所需版本,如下圖位置: 2、點擊所需版本,選擇Windows文件格式,如下圖位置: 3、找到Downloading Apache for Windows欄,進入下載頁,如下圖位置: 4、 ...
  • 在學習Hbase的shell命令,之前先得瞭解如何進入hbase的shell命令行,通過執行如下簡單的命令回車後進入hbase的shell命令行界面 hbase shell 進入hbase命令行後,執行help然後回車,就能看到Hbase的shell命令行下有哪些命令,下麵是根據help反饋的幾類命 ...
  • 學習目標: -使用子查詢操縱數據 -展示多表插入特性 -使用多表插入 -無條件INSERT -旋轉INSERT -有條件 ALL INSERT -有條件 FIRST INSERT -合併表行 -跟蹤數據生命周期內的改變 使用子查詢操縱數據 -從另外一個表複製數據 -從內聯視圖取回數據 -基於另外一個 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...