Simple DDL Parser 使用教程

Simple DDL Parser 使用教程

simple-ddl-parsersimple-ddl-parser:这是一个用于解析 DDL 语句的工具。它提供了一组用于解析 DDL 语句的 API,支持多种数据库类型和版本。使用方法是在 SQL Developer 中引用 simple-ddl-parser 工具,并使用提供的 API 来解析 DDL 语句。项目地址:https://gitcode.com/gh_mirrors/si/simple-ddl-parser

1. 项目的目录结构及介绍

Simple DDL Parser 是一个用于解析 SQL 和 HQL DDL 文件的 Python 库。以下是该项目的目录结构及其介绍:

simple-ddl-parser/
├── docs/
│   └── README.rst
├── simple_ddl_parser/
│   ├── __init__.py
│   ├── ddl_parser.py
│   └── ...
├── tests/
│   ├── __init__.py
│   ├── test_ddl_parser.py
│   └── ...
├── .gitignore
├── LICENSE
├── pyproject.toml
└── README.md
  • docs/: 包含项目的文档文件,如 README.rst
  • simple_ddl_parser/: 包含项目的主要代码文件,如 __init__.pyddl_parser.py
  • tests/: 包含项目的测试文件,如 __init__.pytest_ddl_parser.py
  • .gitignore: Git 忽略文件。
  • LICENSE: 项目的许可证文件。
  • pyproject.toml: 项目的配置文件。
  • README.md: 项目的介绍文件。

2. 项目的启动文件介绍

Simple DDL Parser 的启动文件是 simple_ddl_parser/ddl_parser.py。这个文件包含了主要的解析逻辑和函数。以下是该文件的主要内容:

# simple_ddl_parser/ddl_parser.py

import ply.lex as lex
import ply.yacc as yacc

# 定义词法分析器
tokens = (
    'CREATE', 'TABLE', 'PRIMARY', 'KEY', 'FOREIGN', 'KEY', 'CONSTRAINT',
    'CHECK', 'NOT', 'NULL', 'UNIQUE', 'INDEX', 'INSERT', 'INTO', 'VALUES',
    'SELECT', 'FROM', 'WHERE', 'AND', 'OR', 'ORDER', 'BY', 'GROUP', 'HAVING',
    'JOIN', 'ON', 'AS', 'DISTINCT', 'UNION', 'ALL', 'SET', 'UPDATE', 'DELETE',
    'ALTER', 'ADD', 'DROP', 'COLUMN', 'TABLE', 'VIEW', 'TRIGGER', 'FUNCTION',
    'PROCEDURE', 'BEGIN', 'END', 'DECLARE', 'IF', 'THEN', 'ELSE', 'ELSIF',
    'LOOP', 'WHILE', 'FOR', 'IN', 'OUT', 'INOUT', 'RETURN', 'IS', 'ARE',
    'TYPE', 'RECORD', 'VARRAY', 'OF', 'UNDER', 'MAP', 'MEMBER', 'SELF',
    'CONSTANT', 'SUBTYPE', 'RANGE', 'EXCEPTION', 'RAISE', 'PRAGMA', 'EXECUTE',
    'IMMEDIATE', 'OPEN', 'CLOSE', 'FETCH', 'BULK', 'COLLECT', 'INTO', 'LIMIT',
    'OFFSET', 'CROSS', 'NATURAL', 'INNER', 'LEFT', 'RIGHT', 'FULL', 'OUTER',
    'USING', 'PARTITION', 'BY', 'RANGE', 'INTERVAL', 'OVER', 'WINDOW', 'WITH',
    'CASCADE', 'RESTRICT', 'NO', 'ACTION', 'DATA', 'TYPE', 'SCHEMA', 'DATABASE',
    'USER', 'ROLE', 'GRANT', 'REVOKE', 'IDENTIFIED', 'BY', 'PASSWORD', 'DEFAULT',
    'CURRENT', 'SESSION', 'NEXT', 'VALUE', 'SEQUENCE', 'INCREMENT', 'MINVALUE',
    'MAXVALUE', 'START', 'WITH', 'CACHE', 'NOCACHE', 'CYCLE', 'NOCYCLE',
    'OWNED', 'BY', 'CASCADE', 'RESTRICT', 'NO', 'ACTION', 'COMMENT', 'ON',
    'COLUMN', 'TABLE', 'VIEW', 'INDEX', 'TRIGGER', 'FUNCTION', 'PROCEDURE',
    'SCHEMA', 'DATABASE', 'USER', 'ROLE', 'GRANT', 'REVOKE', 'IDENTIFIED',
    'BY', 'PASSWORD', 'DEFAULT', 'CURRENT', 'SESSION', 'NEXT', 'VALUE',
    'SEQUENCE', 'INCREMENT', 'MINVALUE', 'MAXVALUE', 'START', 'WITH', 'CACHE',
    'NOCACHE', 'CYCLE', 'NOCYCLE', 'OWNED', 'BY', 'CASCADE', 'RESTRICT',
    'NO', 'ACTION', 'COMMENT', 'ON', 'COLUMN', 'TABLE

simple-ddl-parsersimple-ddl-parser:这是一个用于解析 DDL 语句的工具。它提供了一组用于解析 DDL 语句的 API,支持多种数据库类型和版本。使用方法是在 SQL Developer 中引用 simple-ddl-parser 工具,并使用提供的 API 来解析 DDL 语句。项目地址:https://gitcode.com/gh_mirrors/si/simple-ddl-parser

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蒋闯中Errol

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值