达梦数据库的sql语言类型

DQL用于查询数据,如SELECT FROM employees WHERE department='IT',DQL是关键。

DDL定义结构,如CREATE TABLE users(id INT, name VARCHAR),DDL不可少。

DML操作数据,如INSERT INTO users VALUES(1 , 'Alice'),DML是必须的。

DCL管理权限,如GRANT SELECT ON employees TO user1 ,DCL要掌握。

达梦数据库 查询视图的sql命令

哎,你这发的达梦数据库查视图的SQL命令,看着是挺全乎啊...不过我最近在用达梦,有时候确实容易搞混这些视图信息。

你说的方法一,通过SYSOBJECTS和SYSTEXTS查视图定义,我试过一次。
记得是去年1 1 月在咱们公司的测试环境,查一个叫'MY_VIEW'的视图时用的。
当时我忘了把'VIEW_NAME'替换成实际视图名,结果直接跑SQL报错,提示"不存在该视图"。
后来才想起来要替换,这个得特别记着,确实容易忽略。
表名大写这点,我倒是没特别注意过,不过你这么一提,以后注意一下。

方法二那个DBMS_METADATA.GET_DDL函数,我好像没常用。
不过记得之前在Oracle上用过类似的函数,感觉达梦上也能用。
优点是直接给你DDL语句,比较方便。
我记得是2 02 3 年我在北京参加达梦培训时,老师演示过这个,当时感觉挺牛的。

USER_TAB_COLUMNS和ALL_TAB_COLUMNS查字段信息,这个我常用。
比如查'MY_VIEW'的字段,我会用: sql SELECT COLUMN_NAME, DATA_TYPE FROM USER_TAB_COLUMNS WHERE TABLE_NAME = 'MY_VIEW';
这个基本每次都用,很简单。
表名大小写的问题,确实得注意,达梦对大小写有时候是敏感的。

DBA_VIEWS和USER_VIEWS这两个视图,我常用DBA_VIEWS查系统里的所有视图,但得有管理员权限。
记得有一次我权限不够,想查一个别的部门创建的视图,直接报错说"权限不足"。
后来找DBA申请了权限才查到。
USER_VIEWS就只显示自己创建的视图,这个没啥好说的。

你列的那些查询范围,比如查当前用户视图、有权限的所有视图、所有视图,这些场景都挺常见的。
特别是管理员权限查DBA_VIEWS,我经常用这个确认某个视图是不是真的存在,或者看看是谁创建的。

总结一下吧,你发的这些命令都挺实用的。
就是那个替换视图名和表名大小写,还有权限问题,这些得特别注意。
特别是DBMS_METADATA.GET_DDL这个函数,虽然我没常用,但确实挺方便的。
你说的这些方法,我回去也得再复习一遍,有时候用着容易忘。