達(dá)夢數(shù)據(jù)庫踩過的坑

1 如何刪除模式

drop user GONGMIN cascade
(刪除 用戶,同時也刪除用戶關(guān)聯(lián)的模式)

2 如何查詢數(shù)據(jù)(增、刪、改同樣)

2.1 當(dāng)以GONGMIN這個用戶連接數(shù)據(jù)庫時,讀取與用戶名同名的模式中的表,不需要指定模式名稱。讀取與用戶名不同名的模式中的表,需要指定模式名稱;
2.2 特殊的表名必需加雙引號才能訪問,如user表;

3 如何配置兼容mysql

打開DM控制臺工具,將COMPATIBLE_MODE改為mysql,雖然做不到100%兼容mysql,但也能做到至少90%了,能減少不少的適配工作量。


image.png
4 mysql數(shù)據(jù)遷移至達(dá)夢時datetime格式數(shù)據(jù)遷移報錯問題

將mysql中datetime轉(zhuǎn)為timestamp類型。
注意:在mysql中timestamp類型范圍為:1970-01-01 00:00:01.000000 至 2038-01-19 03:01:07.999999
在達(dá)夢數(shù)據(jù)庫中timestamp類型范圍為:1000-01-01 00:00:00.000000 至 9999-12-31 23:59:59.999999

5 mysql數(shù)據(jù)庫中有太多字段類型為datetime,如何批量修改為timestamp

5.1 使用下面的代碼生成批量修改指令:

SELECT DISTINCT CONCAT('alter table <db>.', a.TABLE_NAME , ' MODIFY ( ',  b.column_name ,' timestamp null);')
FROM information_schema.`TABLES` a 
LEFT JOIN  information_schema.`COLUMNS`  b  ON  a.table_name=b.table_name
WHERE a.table_schema ='<db>' 
AND b.data_type LIKE '%datetime%'
ORDER BY a.table_name;

其中<db>表示你的數(shù)據(jù)庫名稱
5.2 將得到的指令全部拷貝出來,批量執(zhí)行即可。

6 關(guān)于varchar類型

在mysql中varchar(10)最多可以存儲10個漢字或者10個數(shù)字或10個英文字母
在達(dá)夢數(shù)據(jù)庫中varchar(10)最多只能存儲5個漢字或者10個數(shù)字或10個英文字母

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容