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

📄 sdbms_sql.cpp

📁 使用yacc的一个例子
💻 CPP
📖 第 1 页 / 共 5 页
字号:
			YYSTYPE YYFAR *yya[3];
			yyinitdebug(yya, 3);
#endif
			{
#line 1006 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.condval = yyattribute(2 - 2).condval;	
#line 2344 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 134:
		{
#line 1007 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.condval = NULL;	
#line 2352 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
		}
		break;
	case 135:
		{
#line 1012 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	ASSERT(g_nOrderCount == 0);	
#line 2359 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
		}
		break;
	case 136:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[2];
			yyinitdebug(yya, 2);
#endif
			{
#line 1019 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	
										g_order[g_nOrderCount].m_strFieldName = yyattribute(1 - 1).sval;
										g_order[g_nOrderCount].m_bAsc = TRUE;
										g_nOrderCount++;
										delete yyattribute(1 - 1).sval;
									
#line 2376 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 137:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[3];
			yyinitdebug(yya, 3);
#endif
			{
#line 1025 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"

										g_order[g_nOrderCount].m_strFieldName = yyattribute(1 - 2).sval;
										g_order[g_nOrderCount].m_bAsc = TRUE;
										g_nOrderCount++;
										delete yyattribute(1 - 2).sval;
									
#line 2394 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 138:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[3];
			yyinitdebug(yya, 3);
#endif
			{
#line 1031 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"

										g_order[g_nOrderCount].m_strFieldName = yyattribute(1 - 2).sval;
										g_order[g_nOrderCount].m_bAsc = FALSE;
										g_nOrderCount++;
										delete yyattribute(1 - 2).sval;
									
#line 2412 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 139:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[4];
			yyinitdebug(yya, 4);
#endif
			{
#line 1040 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.slval = NULL;	
#line 2425 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 140:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[4];
			yyinitdebug(yya, 4);
#endif
			{
#line 1041 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.slval = yyattribute(3 - 3).slval;	
#line 2438 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 141:
		{
#line 1042 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.slval = NULL;	
#line 2446 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
		}
		break;
	case 142:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[3];
			yyinitdebug(yya, 3);
#endif
			{
#line 1047 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"

					g_sdbms.PreAudit1(g_strUserNames, g_strRoleNames);
					g_strUserNames[0] = '\0';
					g_strRoleNames[0] = '\0';
				
#line 2462 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 143:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[3];
			yyinitdebug(yya, 3);
#endif
			{
#line 1056 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"

					g_sdbms.PreNoaudit1(g_strUserNames, g_strRoleNames);
					g_strUserNames[0] = '\0';
					g_strRoleNames[0] = '\0';
				
#line 2479 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 144:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[8];
			yyinitdebug(yya, 8);
#endif
			{
#line 1071 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"

					g_sdbms.PreAudit2(g_strObjectRights, yyattribute(4 - 7).sval, g_strUserNames, g_strRoleNames);
					g_nObRightCount = 0;
					delete yyattribute(4 - 7).sval;
					g_strUserNames[0] = '\0';
					g_strRoleNames[0] ='\0';
				
#line 2498 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 145:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[8];
			yyinitdebug(yya, 8);
#endif
			{
#line 1081 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"

					g_sdbms.PreNoaudit2(g_strObjectRights, yyattribute(4 - 7).sval, g_strUserNames, g_strRoleNames);
					g_nObRightCount = 0;
					delete yyattribute(4 - 7).sval;
					g_strUserNames[0] = '\0';
					g_strRoleNames[0] ='\0';
				
#line 2517 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 146:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[4];
			yyinitdebug(yya, 4);
#endif
			{
#line 1091 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"

												char str[10];
												_itoa(yyattribute(3 - 3).orval,str,10); 
												strcat(g_strObjectRights, ","); 
												strcat(g_strObjectRights, str);
											
#line 2535 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 147:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[2];
			yyinitdebug(yya, 2);
#endif
			{
#line 1097 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"

												char str[10];
												_itoa(yyattribute(1 - 1).orval,str,10); 
												strcat(g_strObjectRights, str);
											
#line 2552 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 148:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[2];
			yyinitdebug(yya, 2);
#endif
			{
#line 1104 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.orval = OR_SELECT;	
#line 2565 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 149:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[2];
			yyinitdebug(yya, 2);
#endif
			{
#line 1105 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.orval = OR_INSERT;	
#line 2578 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 150:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[2];
			yyinitdebug(yya, 2);
#endif
			{
#line 1106 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.orval = OR_UPDATE;	
#line 2591 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 151:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[2];
			yyinitdebug(yya, 2);
#endif
			{
#line 1107 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.orval = OR_DELETE;	
#line 2604 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 152:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[6];
			yyinitdebug(yya, 6);
#endif
			{
#line 1112 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"

					g_sdbms.PreAudit3(g_strSystemRights, g_strUserNames, g_strRoleNames);
					g_strSystemRights[0] = '\0';
					g_strUserNames[0] = '\0';
					g_strRoleNames[0] = '\0';
				
#line 2622 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 153:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[6];
			yyinitdebug(yya, 6);
#endif
			{
#line 1122 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"

					g_sdbms.PreNoaudit3(g_strSystemRights, g_strUserNames, g_strRoleNames);
					g_strSystemRights[0] = '\0';
					g_strUserNames[0] = '\0';
					g_strRoleNames[0] = '\0';
				
#line 2640 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 154:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[4];
			yyinitdebug(yya, 4);
#endif
			{
#line 1131 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	
					char str[10];
					_itoa(yyattribute(3 - 3).srval,str,10); 
					strcat(g_strSystemRights, ","); 
					strcat(g_strSystemRights, str);	
				
#line 2658 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 155:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[2];
			yyinitdebug(yya, 2);
#endif
			{
#line 1138 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	
					char str[10];
					_itoa(yyattribute(1 - 1).srval,str,10); 
					strcat(g_strSystemRights, str);	
				
#line 2675 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 156:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[2];
			yyinitdebug(yya, 2);
#endif
			{
#line 1145 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.srval = yyattribute(1 - 1).srval;	
#line 2688 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 157:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[2];
			yyinitdebug(yya, 2);
#endif
			{
#line 1146 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.srval = yyattribute(1 - 1).srval;	
#line 2701 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 158:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[3];
			yyinitdebug(yya, 3);
#endif
			{
#line 1150 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.srval = SR_CREATE_USER;					
#line 2714 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 159:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[3];
			yyinitdebug(yya, 3);
#endif
			{
#line 1151 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.srval = SR_DROP_USER;						
#line 2727 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 160:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[3];
			yyinitdebug(yya, 3);
#endif
			{
#line 1152 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.srval = SR_CREATE_ROLE;					
#line 2740 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 161:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[3];
			yyinitdebug(yya, 3);
#endif
			{
#line 1153 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.srval = SR_DROP_ROLE;						
#line 2753 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 162:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[4];
			yyinitdebug(yya, 4);
#endif
			{
#line 1154 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.srval = SR_SET_PARENT_ROLE;				
#line 2766 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 163:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[4];
			yyinitdebug(yya, 4);
#endif
			{
#line 1155 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.srval = SR_SET_CHILD_ROLE;					
#line 2779 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 164:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[4];
			yyinitdebug(yya, 4);
#endif
			{
#line 1156 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.srval = SR_SET_TOP_ROLE;					
#line 2792 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 165:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[3];
			yyinitdebug(yya, 3);
#endif
			{
#line 1157 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.srval = SR_ADD_ROLE;						
#line 2805 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 166:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[3];
			yyinitdebug(yya, 3);
#endif
			{
#line 1158 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.srval = SR_DEL_ROLE;						
#line 2818 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 167:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[3];
			yyinitdebug(yya, 3);
#endif
			{
#line 1159 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.srval = SR_CHANGE_ROLE;					
#line 2831 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 168:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[5];
			yyinitdebug(yya, 5);
#endif
			{
#line 1160 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.srval = SR_SET_USER_SECURITY_LEVEL;		
#line 2844 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 169:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[6];
			yyinitdebug(yya, 6);
#endif
			{
#line 1161 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.srval = SR_SET_USER_ALLOW_SECURITY_LEVEL;	
#line 2857 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 170:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[6];
			yyinitdebug(yya, 6);
#endif
			{
#line 1162 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.srval = SR_SET_USER_CURRENT_SECURITY_LEVEL;
#line 2870 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 171:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[5];
			yyinitdebug(yya, 5);
#endif
			{
#line 1163 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.srval = SR_SET_TABLE_SECURITY_LEVEL;		
#line 2883 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 172:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[3];
			yyinitdebug(yya, 3);
#endif
			{
#line 1164 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.srval = SR_GRANT_OBJECT;					
#line 2896 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 173:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[3];
			yyinitdebug(yya, 3);
#endif
			{
#line 1165 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.y"
	yyval.srval = SR_REVOKE_OBJECT;					
#line 2909 "E:\\cm\\test\\SdbmsDemo\\sdbms_sql.cpp"
			}
		}
		break;
	case 174:
		{
#ifdef YYDEBUG
			YYSTYPE YYFAR *yya[3];
			yyinitdeb

⌨️ 快捷键说明

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