1. 達夢資料庫varchar改為number報錯
~
關注
達夢資料庫常見報錯及解決辦法 原創
2021-09-13 16:53:28
果味怪叔叔~
碼齡3年
關注
在達夢資料庫的日常使用中我們可能會遇到很多問題,今天我將自己近期常遇到的錯誤進行總結匯總。
1、連接資料庫報錯:網路通信梁型異常
解決方法:
資料庫連接報網路通信異常原因通常只有兩個,資料庫服務啟動異常或者資料庫伺服器網路通信異常
1. 登錄資料庫伺服器檢查資料庫進程是否存在ps –ef|grep dmserver
2. 檢查資料庫伺服器網路通信ping資料庫伺服器地址
3. 檢查資料庫伺服器數據段渣銀庫埠號通信是否正常telnet資料庫伺服器ip資料庫埠號
2、資料庫啟動報錯:dmserver startup failed, code = -104 [Invalid INI file]
解決方法:
資料庫正常啟動需要有數據文件,該類報錯一般存在如下兩方面原因:
1)數據文件不存在;
2)啟動資料庫的用戶沒有讀寫數據文件的許可權。
3、資料庫連接報錯:用戶名或密碼錯誤
解決方法:
此類錯誤只需輸入正確的密碼即可。
如果忘記密碼,以管理員登錄資料庫後修改該用戶的密碼:
alter user USERNAME identified by 「PASSWD」
前面的USERNAME是用戶名,後面的PASSWD是密碼。
需要注意用戶名不區分大小寫,密碼區分大小寫。
4、登錄資料庫時報錯「用戶已被鎖」
解決方法:
使用SYSDBA登錄到資料庫後,滑鼠右鍵在對應「登錄」名上單擊「解鎖」,此時「登錄名」上的小鎖符號消失;
或使用SYSDBA登錄後手動調用存儲過程call SP_UNLOCK_LOGIN(『登錄名『)解鎖;
通常是用戶多次嘗試登錄但密碼錯誤導致,有時候應用系統配置了資料庫連接池,應用啟動時初始化連接池會多次連接資料庫,如用戶名密碼不對,則很快就會鎖住該用戶。
5、執行update,insert,delete語句完成後程序或其他資料庫連接查不到改變後的數據
解決方法:
造成此類現象的原因單條sql或者sql腳本執行完上述語句後沒有進行commit操作導致。
資料庫的執行單元是事務,事務如果沒有commit或者rollback,仍處於未完成狀態,根據事物ACID特性中的隔離性,其他資料庫連接無法看到未完成的資料庫事務對數據的改變
6、資料庫語句長時間不能執行完成,類似卡住的狀態
解決方法:
1)對於select等查詢語句,需要對sql語句進行分析優化,提升查詢效率
2)update,insert,delete語句執行慢可能的原因為資料庫阻塞導致,需要查握宴找出導致阻塞的語句,並對語句進行處理
7、執行語句報錯「字元串截斷」
解決方法:
修改的數據,超過了資料庫中字元類型(VARCHAR,CHAR)定義的長度,如VARCHAR(64),插入的數據位元組長度超過64就會報錯
8、執行語句報錯「數據溢出」
解決方法:
修改的數據,超過了資料庫中數值類型(int,number,decimal)定義的長度,如decimal(6,2),插入1000000,插入的數據超過定義的范圍就會報錯。
9、執行語句報錯 「不能修改或刪除聚集索引的列」或「試圖刪除聚集主鍵」
解決方法:
若想對有聚聚索引的列進行修改,可以重建表,或者重新在別的列上建立一個聚集索引。該列上的索引就變成非聚集了,就可以修改了。
很多時候是因為創建表時指定的主鍵被自動創建為聚集索引了,可以修改ini參數,將PK_WITH_CLUSTER設為0,則默認創建主鍵時為非聚集型。
2. 達夢資料庫能使用pl/sql這個工具嗎如何連接
沒有什麼區別···都是語法····
你把begin
end
看做是
c裡面的
{
}
就行了···
比如
存儲過程當中
就是as
begin
但是他們中間是定義了變數的
as
declare
@id
int
begin
如果沒有變數
就直接as
begin
也有的寫
is
begin
plsql塊
可能是declare
定義了之後就直接是
begin
所以其實沒什麼太大區別
3. 達夢資料庫怎樣創建資料庫,資料庫跟模式名一樣嗎
達夢資料庫已經在國家電網調度系統中佔領了90%以上的市場,項目涵蓋國網主調、網調主調、電量管理等核心領域,功能性能均能滿足電力核心系統需求。
當然要直觀的了解,還是要自己試試才知道,dm網站可以下載免費開發版。
達夢資料庫管理系統是達夢公司推出的有自主知識產權的高性能資料庫管理系統,簡稱DM。
達夢資料庫管理系統的最新版本是7.0版本,簡稱DM7。