Oracle+Visual Basic60学生信息管理系统.docx
课程设计报告册代码及程序,如有需要,可以百度上联系我,廉价出售课程设计名称:大型数据库OraC1.e专业:班级:_学号:姓名:指导老师:课程设计报告if编号1名称学生信息管理系统主要设备PC附属设备主要软件0ac1.e.Visua1.Basic6.0起止时间2010年12月10日T2月30日同级人无课程设计任务书1 .本等意设计的目的掌握OraCIe根本内容,了解备份和恢发数据库的方法;根本的OraCIe语句,如添加、查询、修改、删除记录语句;VB中数据绑定控件的方法,熟悉数据库连接技术。2 .课程设计的任务及要求1)根本根求:要求掌提OraC1.e的根本概.念,了解备份和恢复数据库的方法,根本的OraCIe语句,如添加、查询、修改、删除记录语句,熟悉数务库连接技术。2)课程设计论文端写要求(1)理论设计局部以课程设计论文的形式提交,格式必须按照课程设计论文标准格式进行书写和装订。(2)课程设计报告(论文)包括中文摘要.目录、绪论、正文、设计小结、参考文献、附录等;(3)正文局部应包含系统功能流程图、系统结构椎图、模块流程图、设计目的、实现思珞、实现步骤、调试运行等O目录第一章、系统机构及主要功能11.1.学生信息管理系统的主要功能1.2系统的功能模块结构第二章、数据库设计52.1创立数据库用户52.2数据库逻辑结构设计52.3创立表的脚本语言6第三章、数据库连接83.1创立数据源83.2数据库连接9第四章、系统的实现101.1 1主窗体的设计101.2 登录窗体的设计121.3 背景窗体的设计141.4 4班级管理窗体的设计151.5 课程信息窗体的设计201.6 用户信息管理窗体的设计261.7 奖惩信息管理窗体的设计271.8 8成维查询窗口的设计291.9 学籍信息管理窗口的设计311.10 10小人信息查询窗口的设计25第五章、运行截图41课程设计总结46一系统结构及主要功能1.1学生信息管理系统的主要功能有:、用户信用管理可以修改、删除、添加用户;(2)、班级信息管理可以添加、修改、删除班级;(3),学籍信息管理可以添加、麦询、修改、删除学籍;(4)、课程信息管理可以交看各班的课程信息;(5)、成绩信息管理可以用一个或几个条件查询、添加、删除,修改成绩;(6),奖惩信息管理可以添加、查询、删除奖惩信息(7).个人信息管理可以查询学生的个人信息。1.2、系统的功能模块结构如下:学生信息告理乐故用户信息管S1成旗信息首整询班程、粕奖息加跆询信布册查½查学个信询生人区二数据库设计2.1 创立数据库用户在设计数据库表结构之前,首先要创立一个学生信息管理的数据库用户,这里定义为ZengyIn,所有相关的表都属于这个用户。创立用户的脚本为:CREATEuserzengymidentifiedbyzengymdefau1.ttab1.espaceuserstemporarytab1.espaceIemPquotaIOmonusers;grantcreatesession.resourcetozengym;这样在设置ODBC时,使用户ZengynI登录,就可以直接在程序中调用用户Zen幻m的表和视图等数据库对象了。2.2 数据库返转结构设计根务学生信息管理系统的功能要求,选取OraeIe为后台数裾库,数据库前台控制界面使用ViSUa1.Basic6.0来实现。该数据库由8个表细成。这8个表包括班级课程信息(CIaSS_cour)表、班级信息(CIaSSj7o11n)表、课程信息(CoUrSeJFOrnO表、获奖信息(PriZe_FOni)表、获奖学生信息(PriZe_SIUd)表、学生成绩信息(SCoreFonn)表、学生信息(StUdentFOnn)表、用户(userForm)表。<1)班级课程信息C1.aSS_cour)表字段名称字段类型说明c1.ass_Nonumber班级编号COUrSe_NamC)Varchar2(50课程名称(2)班级信息(CIaSSJorm)表字段名称字段类型说明C1.aSSJ1.JOnumber班级编号C1.assName)Varchar2(50班级名称C1.assteacher)Varchar2(50导员名字C1.assRemarks)Varchar2(50班级主课程(3)课程信息(CoUrSeForm)表字段名称字段类型说明CoursejiamcYarehar2(50)课程名称Course-RemVarchar2(50)主课程<4)奖惩信息(PriZe_FOnn)表字段名称字段类型说明PriZe_nameVarchar2(50)奖惩名称PrizeRemVarchar2(50)备注<5)奖惩学生信息(PriZe_SIUd)表字段名称字段类型说明PriZe_N0number奖惩编号PrizeStunumber奖惩学生学号PriZe_Da1.Date奖惩日期PriZe_NamVarchar2(50)奖惩名称(6)学生成绩信息(SCOre_Form)表字段名称字段类型说明ScoreNonumber成绩编号SCOre_PerVarchar2(50)成绩类型Score_C1.anumber班级编号Score_Stunumber学生学号SCore_CoUVarchar2(50)课程名称Score_ScoVarchar2(50)成绩(7)学生信息(Student-Form)表字段名称字段类型说明S1.UdenI-NOnumber学号SIUdCnJNamCYarChar2(50)姓名S1.UdenJSeXYarChar2(5)性别student_BirDate出生日期studentC1.anu三ber班级编号studentTc1.Varchar2(50)联系电话S1.UdenJESdDate报名日期student_AddVarchar2(50)家庭地址studentRemVarchar2(50)备注(8)用户(USeJForm)表字段名称字段类型说明userIDVarchar2(50)用户名userPWDVachar2(50)用户密科USerJ)ATEda1.e登录日期2.3 创立表的脚本语Ir(1)班级课程信息(C1.aSSCoUr)表CREATETAB1.Ezengym.c1.ass_Cour(c1.assNOnumberPrimaryKey.courseNamevarchar2(50)TAB1.ESPACEUSERS;(2)班级信息(CIaSS_Form)表CREATETAB1.Ezengyn.c1.ass.Form(c1.assNonumberPrimaryKey,C1.aSS_Namevarchar2(50),c1.assTeachervarchar2(50).C1.assKemarksvarchar2(50)TAB1.ESPACEUSERS;(3)课程信息(course-For)表CREATETAB1.Ezengyn.CourseJorm(courseNan1.eVarchar2(50)PrimtiryKey.courseRemVarchar2(50)TAB1.ESPACEUSERS:(4)奖惩信息(PriZeFornO表CREATETAB1.Ezengym.prize_Form(prize_namovarchar2(50)PrimaryKey.prizeRemVarChar2(50)TAB1.ESPACEUSERS;(5)奖惩学生信息(PriZeSUKO表CREATETAB1.Ezengym.prize_Stud(PriZe_N0numberPrimaryKey,prizeStunumber.prizeDatdate,prizeNamVarchar2(50)TAB1.ESPACEUSERS;(6)学生成绩信息(SCOreForm)表CREATETAB1.Ezengym.score_Form(score_NOnumberPrimaryKey.SCOre_PerVarchar2(50).scoreC1.anumber,score_Stunumber.score_CouVarchar2(50).score_ScoVarchar2(50)TAB1.ESPACEUSERS;(7)学生信息(StUdent_Form)表CREATETAB1.Ezengym.studentJForm(studentNOnumberPrimaryKey,studentjmeVarchar2(50),student_SexVarchar2(5).SiudenjBirDate,studentC1.anumber,student-Te1.Varchar2(50),StUdCnt_EsdDate,Student-AddYarChar2(50).studentRemVarchar2(50)TAB1.ESPACEUSERS:(8)用户(userJ7o11i)表CREATETAB1.Ezengym.userForm(userIDVarchar2(50)PrimaryKey.USeJPWDVarchar2(50).userDATEdate)TAB1.ESPACEUSERS;三数据库连接3.1、 创立数据源为了能够在程序中访问到数据库House,需要创立系统数据源。选择“控制面板-“管理工具”一"数强源"“系统的*标签一“添加"T选择"Orac1.einOraHOme92”数据库驱动程序进入敕据库OraCIeODBCDriverConfigUratiOn配置。将“DataSourceName"设置为StatUS."TNSServiceName"设置为OraCIe创立的数据库,"User"设置为Zengy.然后点击"TestConncetion”进入测试数据库连接是否连接成功。W心也riverConfrStoI,DfttaSourceMaweDescriptionTNSServiceNGeStatusGxrC区ITestConnectiaUser回n©m|APP1.icationQnd1.XQrkar心*rv¾r*<rTronQPHg*Enab1.eResu1.tSetsREnab1.eQUeryTiCeOUp)Read-On1.yCorxnecM。口Enab1.eC1.osinCur三o"Enab1.eThreadSft7SQ1.GetDatAZxtansionCBatchAu1.ocom>tHodeCof11on1.yif«11statan«ntssucceed测试连接数据库是否成功:输入密码zergyn后显示连接结果“Password”输入Zengym,点击OK测试连接是否成功。最后就可以在VB中使用“外接程序”“可视化数据管理"连接数据库。3.2、 数据昨连接(在模块IBodUIe1.baS中)Pub1.icFunctionConnectStringOAsStringConnectSiring="Driver=MicrosoftODIiCfororac1.e):server=gntc;U1.D=Zengyin:PWD=zengyin;*EndFunctionPub1.icFunctionExecuteSQ1.(ByVa1.SQ1.AsString,MsgStringsString)AsADODB.RecordsetDimcnnAsADODB.ConnectionDimrstASAIX)DB.RecordsetDimsTokens()AsStringOnErrorGoToExecuteSQ1._ErrorsTokens=Sp1.it(SQ1.)Setcnn=NewDOI)B.Connectioncnn.OpenConnectStringIfInStr("INSERT,DE1.ETE.UPDATE".UCaSe$(STokenS(O)Thencnn.ExecuteSQ1.MsgString=sTokens(0)&'querysuccessfu1."E1.seSetrst=NewD0DB.Recordsetrst.0pe11TrimJ(SQ1.),cnn,adOpenKeyset,ad1.ockOptimisticSetExecuteSQ1.=rstMsgString="查询到"&rst.RecordCount&*条记录”EndIfExecuteSQ1.Exit:Setrst=NothingSotcnn=NothingExitFunc1.ionExecuteSQ1.Error:MsgString='查询错误:"&Err.DescriptionKesumeEXCeUteSQ1._EXitEndFunction四、系统的实现4.1 主宙体的设计4.1.1 主界面是学生信息管理系统的主要窗口,担任着调动程序其他模块的功能,是整个应程序的核心。在工程中添加一个窗体,金名为“fnnMain"。主界面的主要属性如下:窗体属性设置值具体说明名称FrnMain设置空体名称Appearance1-3D外观效果Caption学生信息管理系统亩体的标题条文本Enab1.eTrue窗体可用Moveab1.eTrue窗体可以移动negotiateToo1barsTrueMDIForm对象在MDIFortn的顶部或底部显示活动对象的工具桂StartUpPositionO-手动设置守体弹出时,位置在屏幕中心选择“工具”菜单项中的“菜单编转器”,施辑菜单内容,如下列图所示。标题9:的鲍画画确定名腑®):cgNrnu取消索引g):II快捷魂):INone)日羯助上下文IDQJ)11瓶啦,仙正台色口震选©必有效O0可见9口显示甯口列表S1111I下一个MI钻入9II«m)I菜单项的黑性如下:标题名独用户信息管理CusiMenu班级信息若理C1.aiMenu学期信息管理StsiMenu黑程信息管理CouiMenu成给信息管理ScoiMenu奖架信息管理PrpiMenu个人存息管理SumiMcnu帮助he1.p主界面如下列图所示:4.1.2 曹口代码如下:PrivateSubc1.aiMenu_C1.ick()frmc1.ai.ShowEndSubPrivateSubcouiMenuC1.ickOfrmcoui.ShowEnc1.SubPrivateSubCUSiMenU_C1.iCkOfrmcusi.ShowEndSubPrivateSubMDIForm1.oa<1.()dCo1.or.ShowEndSubPrivateSubMDIFor三-Resize()IfMe.Height>I1.OOThen(!Co1.or.Height=Me.Height-HOOEndIfIfMe.Width>180ThendCo1.or.Width=Me.Width-180EndIfEndSubPrivateSubprpiMenu_C1.ick()frmprpi.ShowEndSubPrivateSubscoiMenuC1.ick()frmscoi.ShowEndSubPrivateSubstsiMenu_C1.ick()frmstsi.Show-EndSubPrivateSubsumiMenuC1.ick()frmsumi.ShowEndSub4.2 、登录青体的设计4.2.1在工程中添加一个窗体,命名为“frm1.ogin"。原体属性设置值具体说明名称1.abe1.1.设置窗体名称BorderSty1.e1.EixedSing1.e设置窗体的边框显性Caption登录窗体的标题条文本Contro1.BoxFa1.se取消控制按钮在登录窗体中切7加控件,并设置控件的属性如下表所示:对象名属性属性值IxtPassword(名称)IxtPasswordtXtUserNameSty1.eO-DropdownComboTexttXtUserNameCmdOkCaption确定Cmd_Cance1Caption取消4.2.2编写,体代码:PrivateSubForm1.oadODimiAsInteger1 =01.xtSQI.="se1.ect*ronuser_Eorm"WithtxtUserNameSetmrc=ExecuteSQ1.(txtSQ1.,MsgText)DoWhi1.eNotmrc.EOFi=i+1tXtUserName.AddItemTrim(mrc!userID)tnrc.MoveNext1.oop.1.istIndox=i-1EndWithmrc.C1.oseOK=Fa1.semiCount=0EndSubPrivateSubcmdCance1.C1.ickOOK=Fa1.seMe.HideEndSubPrivateSubcmdOKC1.ickOtxtSQ1.="se1.ect*fromuser_Formwhereuser_ID=&txtUserName.Text&Setmrc=ExecuteSQ1.(txtSQ1.MsgToxt)Ifrare.EOE=TrueThenMsgBox"没有这个用户,请重新输入用户名",vbOKOn1.y+VbEXCIamatiOn,"警告'txtUserName.SetFocusE1.seIfTrin(mrc.Fie1.ds(I)=Trim(IxtPassword-Text)ThenOK=Truemrc.C1.oseMe.HideUserName=Triin(txtUserName.Text)E1.seMsgBox"输入的密码不对,请重新输入".vbOKOn1.y+VbExc1.amation,"¾t*txtPassword.SotFocusIXIPaSSword.Tex1.='"EndIfEndIfmiCount=miCount+1IfmiCount=3ThenMe.HideEndIfExitSubEndSubPrivateSub1.abe1.1.C1.ickOEndSubPrivateSubtxtPassword_KeyDown(KeyCodeAsInteger.ShiftAsInteger)En1.erTOTabKeyaM1.eEndSubPrivateSubtxtPassword,KeyPress(KeyAsciiAsInteger)IfKeyAscii=13ThenCa1.1.cn<IOKC1.ickEndIfEndSubPrivateSubtxtUserNameC1.ickOtxtPassword.Text=EndSubPrivateSubIXIUSerName_KeyDOWn(KeycodeAsInteger,Shi1.AsInteger)EnterToTabKeyCodeEndSub4.3背景雷休的设计4.3.1在工程中添加一个窗体.命名为“dCo1.。/0整个窗体的界面设计示意图如下.窗体属性设置值具体说明名称dCo1.or设置窗体名称MaxButtonTrue激活蚊大化按钮MinButtonTrue激活最小化按钮Contro1.BoxTrue控制按钮在登录窗体中2*加控件,并设置控件的属性如下表所示:dCo1.or赞体上的空间及其展性如下表所示。对象名属性属性值Image1.Picture(Bitmap)Image2Picture(Bitmap)StretchFa1.se1.abe1.1Caption欢送进去学生管理系统BackCo1.orO-Transparent4.3.2编写曹体代驾PrivateSubFOrm_1.oado1.abe1.1.EoreCo1.or=&H8000000E1.abe1.1.FontSize=121.abe1.1.AutoSize=Truei=Image2.WidthEndSubPrivateSubFormResizeOImage1.Top=0Image1.1.eft=0Image1.Height=Me.HeightItnage1.Iidth=Me.WidthImage2.Top=Me.Height-Image2.HeightImage2.1.eft=Me.Width-Image2.Width1.abe1.1.Top=Ue.Height-1.abe1.I.Height-100EndSubPrivateSub1.abe1.1.C1.ickOEndSubPrivateSubTimer1.TimerOi=i+501.abe1.1.1.eft=Me.Width-iIfi>Me.Width+1.abe1.1.WidthTheni=Imago2.WidthEndIfEndSub4.4班级管理青体的设计4.4.1在工程中添加一个窗体,命名为''Crmc1.ai”。整个窗体界面示意图如下图。frnc1.ai窗体上的的主要属性和控件设置如下:对象名属性属性值Frmc1.aiCaption班级信息MinbuttonTrue1.inkTopicForm1.Haei)CTrueMSF1.exGrid1.DragMode0-VbManua1.1.abe1.1Caption班级信息列表1.abe12(0)Caption添加1.abe12(1)Caption修改1.abe12(2)Caption删除1.abe13(0)Caption班级编号1.abe13(1)Caption班级名称1.abe13(2)Caption导员姓名1.abe13(3)Caption备注4.4.2编写育休代码PrivateSubCommand1_C1ick()IfText1.(0)=""ThenMsgBox'班级编号不能为空!".VbOKon1.y,'提示"Text1.(O).SetFocusExitSubEndIfifText1.(I)="*ThenMsgBox'班级名称不能为空!",VbOKOn1.y,'提示"Text1.(1).SetFocusExitSubEndifIfText1.(2)=",ThenMsgBox导员姓名不能为空!",VboKOn1.y,'提示"Text1.(2).SetFocusExi1.SubEndIftxtSQ1.="se1.ect*fromc1.ass_Formwherec1.ass_NO=',&Trim(Text1.(O)&Setmrc-ExocuteSQ1.(txtSQ1.,MsgText)Ifmrc.EOF=Fa1.seThenMsgBox'此班级褊号巳经存在!",VbOKOn1.y,n*"Text1.(O).SetFocusExitSubEndIftnrc.C1.osetxtSQ1.="se1.ect*fromc1.assForm"SetmrcExecuteSQ1.(txtSQ1.MsgText)mrc.AddNeWmrc.Fie1.ds(O)=Trim(Text1.(O)mrc.Fie1.ds(I)=Trim(Text1.(D)mrc.Fie1.ds(2)=Trim(Text1.(2)mrc.Fie1.ds(3)=Trim(Text1.(3)mrc.Updatemrc.C1.oseFori=OTo3TextKi)="NextMsgBox班级信息添加成功!",VboKOn1.y,'提示"ShowDataEndSubPrivateSubCom1.nand2C1.ickOFori=OTo3Text1.(i)=-NextEndSubPrivateSubCommandoC1.ickOtxtSQ1.="de1.etefromCIaSS_FOrmwherec1.ass_NO='"&Trim(Text1.(8)&Setmrc:ExecuteSQ1.(txtSQ1.,MsgToxt)FOri=8To11TextKi)="NextMsgBox'班级已经删除!".VboKon1.y.警告"ShowDataEndSubPrivateSubCOInDand6_C1.ick()Fori=8To11TextKi)=八NextEndSubPrivateSubFOrm_1.oadoMe.Cap1.ion="班级信息一>添."Picture1.(1).Top=Picture1.(O).TopPicture1.(1).1.eft=Picture1.(O).1.eftPicturo1.(2).Top=Picture1.(O).TopPicture1.(2).1.eft=Picture1.(O).1.eftShowDataFori=OTo21.abe1.2(i).BackCo1.or=&HEOEOEOPicture!(i).Visib1.e=Fa1.seNext1.abe12(O).BackCo1.or=&HITFFEFPicture!(O).Visib1.e=TrueEndSubPrivateSubFOrmResizeOdCo1.or.ZOrder1EndSubPrivateSub1.abe12C1.ick(IndexsInteger)Me.Caption="班级信息"Me.Caption=Me.Caption&"->"&Trim(1.abe12(Index).Caption)Fori=OTo21.abe1.2(i).BackCo1.or=UiEOEOEOPicture1.(i).Visib1.e=Fa1.seNext1.abeI2(Index).BackCo1.or=&HFFFFFFPicture1.(Index).Visib1.e=TrueFori=OTo11Text1.(i)="NextCommand3.Enab1.ed=Fa1.seCommando.Enab1.ed=Fa1.seEndSubPrivateSubShowDataODimtxSQ1.AsStringDimmrccAsADODB.RecordsetIxSQ1.="se1.ect*fromc1.ass-For>"O)=1)=2)=3)="班级编号""班级名称""导员姓名"备注信息C'Setmrcc=ExecuteSQ1.(txSQ1.,MsgText)WithMSF1.exGrid1.Co1.Hidih(O)=1200.Co1.Width(I)=1200,Co1.Width(2)=1200.Co1.Width(3)=6000.TextMatrixCO,.Tex1.Matrix(O,.TextMatrixCO,.TextMatrix(O,.Rows=1DoWhi1.eNotmrcc.EOF.Rows=.Rows+1Fori=0Tomrcc.Fie1.ds.Count-1.TextMatrix(.Rows-1.i)=mrcc.Fie1.ds(i)&""Nextimrcc.MoveNext1.oopEndWithmrcc.C1.oseEndSubPrivateSubMSF1.exGrid1._C1.ick()IfPicture1.(1).Visib1.e=TrueThenText1.(4)=Trin(MSE1.exGrid1.TextMatrix(MSHIexGrid1.Row.0)Text1.(5)=Trim(MSF1.exGrid1.TextMatrix(MS11exGrid1.Row,1)Text1.(6)=Trim(MSF1.exGrid1.TextMatrix(MSF1.exGrid1.Row.2)Text1.(7)=Trim(MSF1.exGrid1.TextMatrix(MSF1.exGrid1.Row.3)Conmnd3.Enab1.ed=TrueEndIfIfPicture1.(2).Visib1.e=TrueThenText1(8)=Trim(MSF1.exGrid1.TextMatrix(MSF1.exGrid1.Row.0)Text1.(9)=Trim(MSF1.exGrid1.TextMatrix(MSF1.exGrid1.Row,1)Text1.(10)=Trim(MSF1.exGrid1.TextMatrix(MSF1.exGrid1.Row,2)Text1.(11)=Trim(USF1.exGrid1.TextMatrix(MSF1.exGrid1.Row,3)COmmand5.Enab1.ed=TrueEndIfEndSubPrivateSubText1.ChangedndexAsInteger)ifIndex三4ThentSQ1.=,se1.ectfromc1.assFormwherec1.assNO='"&Tritn(Text1(Index)&Setmrc=ExecuteSQ1.(tSQ1.,MsgText)Ifmrc.EOF=Fa1.seThenText1.(5)=rare.Fie1.ds(I)Text1.(6)=rare.Fie1.ds(2)Text1.(7)三mrc.Fie1.ds(3)Command3.Enab1.ed=TrueExitSubE1.seText1.(5)=,Text1.(6)=Text1.(7)=Command3.Enab1.ed=Fa1.seEndIftnrc.C1.oseEndIfIfIndex=8ThenISQ1.=*se1.ectfr(xnc1.ass_Formwherec1.ass_N0='"&Trim(Text1(Index)&Setnrc=ExecuteSQ1.(tSQ1.,MsgText)Ifrare.EOF=Fa1.seThenText1.(9)=rare.Fie1.ds(I)Text1.(10)=nrc.Fie1.ds(2)Text1.(II)=mrc.Fie1.ds(3)Command5.Enab1.ed=TrueExitSubE1.seText1.(9)=''Text1.(IO)="Text1.(I1.)="Command,Enab1.ed=Fa1.seEndIfmrc.C1.oseEndIfEndSubPrivateSubText1.GotFocusdndexAsInteger)Text1.(Index).Se1.Start=OText1.(Index).Se1.1.ongth-1.en(Text1.(Index)EndSubPrivateSubText1.KeyDowndndexsInteger,KeyCodeAsInteger,ShiftAsInteger)EnterToTabKeyCodeEndSub4.5果程信息曹休的设计4.5.1在工程中添加一个窗体,命名为“frmcoui".整个窗体界面如下所示。FnnCoUi窗体的主要控件和属性设置如下对象名属性属性值Comco1.TextCombo1.1.ist1.(名称)密码TxtUserText1.ist1.FrmcouiCaption课程信息StartUpPositionO-手动Conunand1.Caption添加Command2Caption删除4.5.2添加窘体代码PrivateSubCombo1.C1.ickO1.ist1.TextEndSubPrivateSubCommand1_C1ick()DimtXtSQ1.AsStringifText1.(O)=",ThenMsgBox'课程名称不能为空",VboKOnIy,"提示Text1.(O).SetFocusExitSubEndIftXtSQ1.="se1.ect*fromcourseEormwherecourseName-&Trim(Text1.(O)&Setmrc=EXeCUteSQ1.(txtSQ1.,MsgText)Ifmrc.EOF=Fa1.seThenMsgBox'此课程名称已经存在!".VbOKOn1.y,"警告"Text1.(O).SetFocusExitSubEndIfmrc.C1.ose1.xtSQI.="se1.ect*romCoUrSe_Form'Setmrc=EXeCUteSQ1.(tx