⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 文法.txt

📁 数据库模拟程序 实现控制台命令词法分析
💻 TXT
字号:
11111111//creat table语句的文法
//其中c-create,t-table,g-字符串,n-数字,i-int,a-char
S@#E#
E@ctg(F)
F@ga[n],F
F@gi,F
F@ga[n]
F@gi
******提取公因子-修改后文法如下//&代表null//········
E->ctg(F)             FIRST()={c}
F->gW                 FIRST()={g}
W->a(n)Q              FIRST()={a}
W->iP                 FIRST()={i}
Q->,F                 FIRST()={,}
Q->&                  FIRST()={&}  FOLLOW(Q)={$,)}
P->,F                 FIRST()={,}
P->&                  FIRST()={&}  FOLLOW(P)={$,)}
******************************************************************************************
22222222222/////  alter table ** add|drop ** type(length)语句的文法
//l=alter,t-table,g-字符串,n-数字,i-int,a-char,d-add,r-drop
S@#E#
E@ltgdF
F@ga[n]
F@gi
提取公因子-修改后文法如下//&代表null//········
E->ltgW             FIRST()={l}
W->dF               FIRST()={d}
W->rF               FIRST()={r}
F->gH               FIRST()={g}
H->a(n)             FIRST()={a}
H->i                FIRST()={i}
******************************************************************************************
333333333///////  drop table **
//x-index,v-view,d-drop, t-table
S@#E#
E@dtg
E@dxg
E@dvg
******提取公因子-修改后文法如下//&代表null//········
E->dW            FIRST()={d}
W->tg            FIRST()={t}
W->xg            FIRST()={x}
W->vg            FIRST()={v}
******************************************************************************************
4444444444//////// insert into....'s grammar
//i-insert,t-into,g-字符串,n-数字,v-values
S@#E#
E@itgv(F)
E@itg(G)v(F)
G@g,G
G@g
F@'g',F
F@n,F
F@'g'
F@n
提取公因子-修改后文法如下//&代表null//········
(1)E->itgW           FIRST()={i}
(2)W->K              FIRST()={v}
(3)W->(G)K           FIRST()={(}
(4)K->v(F)           FIRST()={v}
(5)G->gM             FIRST()={g}
(6)M->,G             FIRST()={,}
(7)M->&              FIRST()={&}  FOLLOW(M)={$,)}
(8)F->'g'H           FIRST()={'}
(9)F->nQ             FIRST()={n}  
(10)H->,F             FIRST()={,}  
(11)H->&              FIRST()={&}  FOLLOW(H)={$,)}
(12)Q->,F             FIRST()={,}  
(13)Q->&              FIRST()={&}  FOLLOW(Q)={$,)}
******************************************************************************************
55555555///////////  update's grammar
//u-update,s-set,w-where,a-and,o-or,g-字符串,n-数字
S@#E#
E@ugsFwW
F@g='g',F
F@g=n,F
F@g='g'
F@g=n
W@(W)
W@(W)aW
W@(W)oW
W@g='g'aW
W@g='g'oW
W@g=naW
W@g=noW
W@g='g'
W@g=n

******提取公因子-修改后文法如下//&代表null/////=-r········
(1)E->ugsFwW     FIRST()={u}
(2)F->grH        FIRST()={g}
(3)H->'g'T       FIRST()={'}
(4)H->nT         FIRST()={n}
(5)T->,F         FIRST()={,}
(6)T->&          FIRST()={&}  FOLLOW(T)={$,w}
(7)W->(W)Z       FIRST()={(}
(8)W->grK        FIRST()={g}
(9)K->'g'Z       FIRST()={'}
(10)K->nZ        FIRST()={n}
(11)Z->aW        FIRST()={a}
(12)Z->oW        FIRST()={o}
(13)Z->&         FIRST()={&}  FOLLOW(Z)={$,)}
*****************************************************************************************
666666666////////  delete from ** where **'s grammar
//d-delete, f-from, w-where, a-and, o-or, >/</>=/<=/!=/=-r, g-字符串, n-数字
S@#E#
E@dfgwW
W@(W)
W@(W)aW
W@(W)oW
W@gr'g'aW
W@gr'g'oW
W@grnaW
W@grnoW
W@gr'g'
W@grn
提取公因子-修改后文法如下//&代表null/////········
(1)E->dfgwW     FIRST()={d}
(2)W->(W)Z       FIRST()={(}
(3)W->grK        FIRST()={g}
(4)K->'g'Z       FIRST()={'}
(5)K->nZ        FIRST()={n}
(6)Z->aW        FIRST()={a}
(7)Z->oW        FIRST()={o}
(8)Z->&         FIRST()={&}  FOLLOW(Z)={$,)}


***************************************************************************************
777777777777777//////////select...'s grammar
//s-select, f-from, w-where, a-and, o-or, */>/</>=/<=/!=/=-r, g-字符串, n-数字
S@#E#
E@sAfN
E@sAfNwW
A@*
A@B
B@g,B
B@g.g,B
B@g
B@g.g
N@g,N
N@g
W@(W)
W@(W)aW
W@(W)oW
W@gr'g'aW
W@g.gr'g'aW
W@gr'g'oW
W@g.gr'g'oW
W@grnaW
W@g.grnaW
W@grnoW
W@g.grnoW
W@gr'g'
W@g.gr'g'
W@grn
W@g.grn
修改后文法如下//&代表null//         *由r替代(为统一起见)········
(1)  E->sAfNQ         FIRST()={s}
(2)  Q->wW	      FIRST()={w}
(3)  Q->&             FIRST()={&}  FOLLOW(Q)={$}   
(4)  A->r             FIRST()={r}
(5)  A->B             FIRST()={g}
(6)  B->gM            FIRST()={g}   
(7)  M->,B            FIRST()={,}
(8)  M->.gD           FIRST()={.}
(9)  M->&             FIRST()={&} FOLLOW(M)={$,f}  
(10) D->,B            FIRST()={,}          
(11) D->&             FIRST()={&} FOLLOW(D)={$,f} 
(12) N->gF            FIRST()={g} 
(13) F->,N            FIRST()={,} 
(14) F->&             FIRST()={&} FOLLOW(F)={$,w}
(15) W->(W)K          FIRST()={(} 
(16) K->&             FIRST()={&} FOLLOW(K)={$,)}
(17) K->aW            FIRST()={a}
(18) K->oW            FIRST()={o}
(19) W->gZ            FIRST()={g}
(20) Z->rY            FIRST()={r}
(21) Z->.gU           FIRST()={.}
(22) Y->'g'K          FIRST()={'}
(23) Y->nK            FIRST()={n}
(24) U->rR            FIRST()={r}
(25) R->'g'K          FIRST()={'}
(26) R->nK            FIRST()={n}            /////////////30个产生式;
******************************************************************************
888888888888888888888888888888//union,intersect,minus's grammar
//s-select, f-from, w-where, a-and, o-or, >/</>=/<=/!=/=-r, g-字符串, n-数字
//u-union, j-intersect, m-minus
T@#U#
U@(S)u(S)
U@(S)j(S)
U@(S)m(S)
S@E
E@sAfN
E@sAfNwW
A@*
A@B
B@g,B
B@g.g,B
B@g
B@g.g
N@g,N
N@g
W@(W)
W@(W)aW
W@(W)oW
W@gr'g'aW
W@g.gr'g'aW
W@gr'g'oW
W@g.gr'g'oW
W@grnaW
W@g.grnaW
W@grnoW
W@g.grnoW
W@gr'g'
W@g.gr'g'
W@grn
W@g.grn

99999999999999999//creat..系列文法
//其中c-create,t-table,g-字符串,n-数字,i-int,l-char
//s-select, f-from, w-where, a-and, o-or, >/</>=/<=/!=/=-r
//u-union, j-intersect, m-minus
//x-index, q-as, y-on, p-增加order, d-减少order, v-view
//e-user, k-identified, z-by, b-system,h-password
C@#T#
T@Q     //创建一般表
T@G	//创建索引
T@H	//创建视图
T@J	//创建用户
T@I	//设置密码
T@ctgS		//通过select创建表
T@ctg(U)	//通过union,interact,minus创建表
Q@ctg(Y)
Y@gl[n],Y
Y@gi,Y
Y@gl[n]
Y@gi
U@(S)u(S)
U@(S)j(S)
U@(S)m(S)
S@E
E@sAfN
E@sAfNwW
A@*
A@B
B@g,B
B@g.g,B
B@g
B@g.g
N@g,N
N@g
W@(W)
W@(W)aW
W@(W)oW
W@gr'g'aW
W@g.gr'g'aW
W@gr'g'oW
W@g.gr'g'oW
W@grnaW
W@g.grnaW
W@grnoW
W@g.grnoW
W@gr'g'
W@g.gr'g'
W@grn
W@g.grn
G@cxgygO//创建索引
O@p
O@d
H@cvgqsBfNwW//产生视图
J@cegkzb
I@h


101010010100101010//  5.  创建,选择,投影,连接,嵌套选择,嵌套投影,嵌套连接,嵌套交/并/差
//交,并,差综合系列文法
//其中c-create,t-table,g-字符串,n-数字,i-int,l-char
//s-select, f-from, w-where, a-and, o-or, >/</>=/<=/!=/=-r
//u-union, j-intersect, m-minus
//x-index, q-as, y-on, p-增加order, d-减少order, v-view
//e-user, k-identified, z-by, b-system,h-password
C@#T#
C@#T#
T@U
T@S
T@Q
T@G
T@H
T@J
T@I
T@Z
Z@stg		//查看表结构
Z@svg		//查看视图结构
Z@sxg		//查看索引结构
T@ctgS
T@ctg(U)
Q@ctg(Y)
Y@gl[n],Y
Y@gi,Y
Y@gl[n]
Y@gi
U@(S)u(S)
U@(S)j(S)
U@(S)m(S)
S@E
E@sAfN
E@sAfNwW
A@*
A@B
B@g,B
B@g.g,B
B@g
B@g.g
N@g,N
N@g
W@(W)
W@(S)
W@(U)
W@(W)aW
W@(W)oW
W@gr'g'aW
W@gr'n'aW
W@g.gr'g'aW
W@g.gr'n'aW
W@gr'g'oW
W@gr'n'oW
W@g.gr'g'oW
W@g.gr'n'oW
W@g.grg.gaW
W@g.grg.goW
W@grnaW
W@g.grnaW
W@grnoW
W@g.grnoW
W@gr'g'
W@g.gr'g'
W@grn
W@g.grn
G@cxgygO
O@p
O@d
H@cvgqsBfNwW
J@cegkzb
I@h

11 11 11 11 11 //grant.. & revoke...系列文法
//a-grant, o-on, t-to, r-revoke, f-from, g-字符串 
S@#E#
E@G
E@R
G@aAogtU
A@g,A
A@g
U@g,U
U@g
R@rAogfU
修改后文法如下//&代表null//  *************************

E->aAogtU     FIRST()={a}
E->rAogfU     FIRST()={r}
A->gP         FIRST()={g}
P->,A         FIRST()={,}
P->&          FIRST()={&} FOLLOW(P)={$,o}  
U->gQ         FIRST()={g}
Q->,U         FIRST()={,}
Q->&          FIRST()={&} FOLLOW(Q)={$}  

12 12 12 12 12 12//CREATE VIEW 文法—————————————————————————
//CREATE-c,VIEW-v,AS-a//s-select, f-from, w-where, a-and, o-or, */>/</>=/<=/!=/=-r, g-字符串, n-数字

 *由r替代(为统一起见)········

(1)  E->cvgaG         FIRST()={c}
(2)  G->sAfNQ         FIRST()={s}
(3)  Q->wW	      FIRST()={w}
(4)  Q->&             FIRST()={&}  FOLLOW(Q)={$}   
(5)  A->r             FIRST()={r}
(6)  A->B             FIRST()={g}
(7)  B->gM            FIRST()={g}   
(8)  M->,B            FIRST()={,}
(9)  M->.gD           FIRST()={.}
(10)  M->&             FIRST()={&} FOLLOW(M)={$,f}  
(11) D->,B            FIRST()={,}          
(12) D->&             FIRST()={&} FOLLOW(D)={$,f} 
(13) N->gF            FIRST()={g} 
(14) F->,N            FIRST()={,} 
(15) F->&             FIRST()={&} FOLLOW(F)={$,w}
(16) W->(W)K          FIRST()={(} 
(17) K->&             FIRST()={&} FOLLOW(K)={$,)}
(18) K->aW            FIRST()={a}
(19) K->oW            FIRST()={o}
(20) W->gZ            FIRST()={g}
(21) Z->rY            FIRST()={r}
(22) Z->.gU           FIRST()={.}
(23) Y->'g'K          FIRST()={'}
(24) Y->nK            FIRST()={n}
(25) U->rR            FIRST()={r}
(26) R->'g'K          FIRST()={'}
(27) R->nK            FIRST()={n}            /////////////31个产生式;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -