设为首页 加入收藏

TOP

Firebird的SQL语法
2014-11-24 07:14:02 来源: 作者: 【 】 浏览:2
Tags:Firebird SQL 语法

一、分页:

SELECT FIRST 10 templateid,code,name FROM template ;

SELECT FIRST 10 SKIP 10 templateid,code,name FROM template ;

SELECT * FROM shop ROWS 1 TO 10; --firebird2.0支持这种写法

二、显示表名和表结构

  SHOW TABLES;

SHOW TABLE tablename;

三、使用ISQL连接数据库

firebird%92bin>isql -u sysdba -p masterkey

SQL>CONNECT 'E:companyxmwsoftnewxmwsoftc2dbcts2.fdb';

SQL>CONNECT 'E:%92'

CON>USER 'sysdba'

CONT>PASSWORD 'masterkey';

四、更新字段注释

UPDATE RDB$RELATION_FIELDS

SET RDB$DESCRIPTION = '描述信息'

WHERE (RDB$RELATION_NAME = 'SHOP')

AND (RDB$FIELD_NAME = 'CREDIT_BUY')

五、显示字段注释

SELECT RDB$FIELD_NAME,RDB$DESCRIPTION

FROM RDB$RELATION_FIELDS

WHERE (RDB$RELATION_NAME = 'SHOP')

AND (DB$FIELD_NAME = 'CREDIT_BUY')

六、更新表注释

UPDATE RDB$RELATIONS

SET RDB$DESCRIPTION = '描述信息'

WHERE RDB$RELATION_NAME = 'TABLE_NAME';

七、查询所有的表和视图(包括系统表和系统视图)

SELECT RDB$RELATION_NAME

FROM RDB$RELATIONS;

八、查询所有的用户表和用户视图

SELECT RDB$RELATION_NAME

FROM RDB$RELATIONS

WHERE RDB$SYSTEM_FLAG = 0;

九、查询所有的用户表

SELECT RDB$RELATION_NAME

FROM RDB$RELATIONS

WHERE RDB$SYSTEM_FLAG = 0

AND RDB$VIEW_BLR IS NULL;

十、查所有用户表、用户视图所有字段及相关定义

SELECT

a.RDB$RELATION_NAME,

b.RDB$FIELD_NAME,

b.RDB$FIELD_ID,

d.RDB$TYPE_NAME,

c.RDB$FIELD_LENGTH,

c.RDB$FIELD_SCALE

FROM RDB$RELATIONS a

INNER JOIN RDB$RELATION_FIELDS b

ON a.RDB$RELATION_NAME = b.RDB$RELATION_NAME

INNER JOIN RDB$FIELDS c

ON b.RDB$FIELD_SOURCE = c.RDB$FIELD_NAME

INNER JOIN RDB$TYPES d

ON c.RDB$FIELD_TYPE = d.RDB$TYPE

WHERE a.RDB$SYSTEM_FLAG = 0

AND d.RDB$FIELD_NAME = 'RDB$FIELD_TYPE'

ORDER BY a.RDB$RELATION_NAME, b.RDB$FIELD_ID;

十一、查找某表的所有字段及相关定义

SELECT

A.RDB$FIELD_NAME,

B.RDB$FIELD_TYPE,

B.RDB$FIELD_LENGTH,

B.RDB$FIELD_PRECISION,

B.RDB$FIELD_SCALE

FROM RDB$RELATION_FIELDS A, RDB$FIELDS B

WHERE A.RDB$RELATION_NAME = 'tablename'

AND A.RDB$FIELD_SOURCE = B.RDB$FIELD_NAME

ORDER BY A.RDB$FIELD_POSITION;

十二、查找某表的主键定义字段

SELECT A.RDB$FIELD_NAME

FROM RDB$INDEX_SEGMENTS A, RDB$RELATION_CONSTRAINTS B

WHERE B.RDB$CONSTRAINT_TYPE = 'PRIMARY KEY'

AND B.RDB$RELATION_NAME = 'tablename'

AND A.RDB$INDEX_NAME = B.RDB$INDEX_NAME

ORDER BY A.RDB$FIELD_POSITION;

十三、查找某表的外键定义

SELECT

r1.RDB$CONSTRAINT_NAME,

rind.RDB$FIELD_NAME,

r2.RDB$RELATION_NAME

FROM

RDB$RELATION_CONSTRAINTS r1,

RDB$RELATION_CONSTRAINTS r2,

RDB$REF_CONSTRAINTS ref,

RDB$INDEX_SEGMENTS rind

WHERE r1.RDB$RELATION_NAME = 'tablename'

AND r1.RDB$CONSTRAINT_TYPE = 'FOREIGN KEY'

AND r1.RDB$CONSTRAINT_NAME = ref.RDB$CONSTRAINT_NAME

AND ref.RDB$CONST_NAME_UQ = r2.RDB$CONSTRAINT_NAME

AND r1.RDB$INDEX_NAME = rind.RDB$INDEX_NAME;

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇解决雪崩伪代码 下一篇基于输出的数据库审计和三层数据..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Redis 分布式锁全解 (2025-12-25 17:19:51)
·SpringBoot 整合 Red (2025-12-25 17:19:48)
·MongoDB 索引 - 菜鸟 (2025-12-25 17:19:45)
·What Is Linux (2025-12-25 16:57:17)
·Linux小白必备:超全 (2025-12-25 16:57:14)