安徽工业大学数据库上机实验报告专业:工业工程班级:工112学号:姓名:【实验2_1】查询学生基本信息表中的所有信息。
SQL语句如下:SELECT *FROM 学生基本信息表;【实验2_2】在学生基本信息表中查询学生的学号、姓名、性别和族别信息。
SQL语句如下:SELECT 学号, 姓名, 性别, 族别FROM 学生基本信息表;【实验2_3】从学生基本信息表中查询学生由哪些民族构成。
学生的族别有多行重复,要快速查询学生的民族构成,实际上就是对相同值的族别只需要显示一行,可使用DISTINCT关键字实现。
SQL语句如下:SELECT DISTINCT 学生基本信息表.族别FROM 学生基本信息表【实验2_4】从成绩表中查询学生成绩。
SQL语句如下:SELECT 学号, 成绩FROM 成绩表;【实验2_5】从相关表中查询每一位学生的学号、姓名、课程名称、成绩。
SQL语句如下:SELECT 成绩表.学号, 学生基本信息表.姓名, 课程信息表.课程名称, 成绩表.成绩FROM 课程信息表, 成绩表, 学生基本信息表WHERE 学生基本信息表.学号=成绩表.学号and 成绩表.课程编号=课程信息表.课程编号;【实验2_6】在课程信息表中查找“Delphi程序设计”课程的任课老师。
SQL语句如下:SELECT 课程名称, 任课教师FROM 课程信息表WHERE 课程名称="Delphi程序设计";【实验2_7】查询少数民族学生的基本情况。
SQL语句如下:SELECT *FROM 学生基本信息表WHERE 族别<>"汉族";【实验2_8】检索1985年1月1日以后出生的女生基本信息。
SQL语句如下:SELECT *FROM 学生基本信息表WHERE 出生日期>#1985/1/1# AND 性别="女";【实验2_9】查询每位同学的课程门数、总成绩、平均成绩。
SQL语句如下:SELECT 学号, Count(课程编号) AS 课程总数, Sum(成绩) AS 总分数, Avg(成绩) AS 平均分FROM 成绩表GROUP BY 学号;【实验2_10】从学生基本信息表中统计各民族学生人数。
SQL语句如下:SELECT 族别, Count(学号) AS 学生总数FROM 学生基本信息表GROUP BY 族别;【实验2_11】从学生基本信息表中统计汉族学生的人数。
SQL语句如下:SELECT 族别, count(学号) AS 学生人数FROM 学生基本信息表GROUP BY 族别HA VING 族别="汉族";【实验2_12】显示平均成绩大于等于80分以上的学生情况。
SQL语句如下:SELECT 成绩表.学号, A VG(成绩表.成绩) AS 平均分FROM 成绩表GROUP BY 学号HA VING A VG (成绩)>=80;【实验2_13】查询学生成绩并将显示的结果按成绩升序排序。
SQL语句如下:SELECT 学号, 课程编号, 成绩FROM 成绩表ORDER BY 学号, 成绩;【实验2_14】查询1985年出生的学生基本信息。
SELECT *FROM 学生基本信息表WHERE 出生日期between #1985/1/1# and #1985/12/31#;【实验2_15】查询不及格学生成绩信息。
查询不及格学生成绩信息,也就是查询0—59之间的学生成绩,可用BETWEEN关键字表示为:WHERE 成绩BETWEEN 0 AND 59。
SQL语句如下:SELECT 学号, 课程编号, 成绩FROM 成绩表WHERE 成绩between 0 and 59;【实验2_16】查询课程编号为002、003、007的课程编号、课程名称、任课教师和上课时间。
SQL语句如下:SELECT 课程编号, 课程名称, 任课教师, 上课时间FROM 课程信息表WHERE 课程编号="002" or 课程编号="003" or 课程编号="007";【实验2_17】检索所有姓刘的学生基本信息。
SQL语句如下:SELECT *FROM 学生基本信息表WHERE 姓名like "刘*";【实验2_18】检索包含“技术”两字的课程信息。
SQL语句如下:SELECT *FROM 课程信息表WHERE 课程名称like "*技术*";【实验2_19】查询第2 个字为“丽”的学生信息。
SQL语句如下:SELECT *FROM 学生基本信息表WHERE 姓名like "?丽*";【实验2_20】查询课程信息表中教师未定的课程信息。
SQL语句如下:SELECT *FROM 课程信息表WHERE 任课教师is null;【实验2_21】统计成绩表中各门课程的学生人数、总成绩、平均成绩。
SQL语句如下:SELECT 课程编号, count(学号) AS 学生人数, sum(成绩) AS 总成绩, avg(成绩) AS 平均成绩FROM 成绩表GROUP BY 课程编号;【实验2_22】检索单科成绩高于该课程平均分的学生成绩信息。
SQL语句如下:SELECT 学号, 课程编号, 成绩FROM 成绩表WHERE 成绩> (select avg(成绩)from 成绩表as xwhere x.课程编号=成绩表.课程编号);【实验2_23】使用左外连接检索学生成绩信息(学号,姓名,课程号,成绩)。
SQL语句如下:SELECT 学生基本信息表.学号, 姓名, 课程编号, 成绩FROM 学生基本信息表LEFT JOIN 成绩表ON 学生基本信息表.学号=成绩表.学号;【实验2_24】使用右外连接检索学生成绩信息(学号,姓名,课程号,成绩)。
SQL语句如下:SELECT 学生基本信息表.学号, 姓名, 课程编号, 成绩FROM 学生基本信息表RIGHT JOIN 成绩表ON 学生基本信息表.学号=成绩表.学号;【实验2_25】查找同名同姓的学生信息。
SQL语句如下:SELECT A1.*FROM 学生基本信息表AS A1, 学生基本信息表AS A2WHERE A1.姓名=A2.姓名AND A1.学号<>A2.学号;【实验2_26】在VB中设计针对“课程信息表”的基本编辑窗体,需要附运行界面及源程序代码。
源程序代码:Option ExplicitDim sql As StringPrivate Sub cmdQuery_Click()Dim sql1 As StringDim i As IntegerDim sqlA(3) As StringsqlA(0) = "课程编号= '" & Trim$(txtSID.Text) & "'"sqlA(1) = "课程名称= '" & Trim$(txtSID.Text) & "'"sqlA(2) = "任课老师= '" & Trim$(txtSID.Text) & "'"If ComboSelect.Text <> "" And txtSID <> "" Thensql1 = sqlA(ComboSelect.ListIndex) '用于存放SQL语句中的WHERE子句的条件End If'SELECT 语句+WHERE 子句的条件字符串形成完整的SQL 语句sql = "SELECT * FROM 管理信息表WHERE " & sql1 & " ORDER BY 课程编号" Adodc1.RecordSource = sql '刷新Adodc1If sql1 <> "" Then 'SQL语句完整则执行,否则退出查询Adodc1.RefreshElseExit SubEnd IfIf Adodc1.Recordset.BOF Then '若记录集为空MsgBox "对不起,没有你所要查找的记录。
", vbInformation Exit SubEnd IfSet DataGrid1.DataSource = Adodc1 '重新绑定数据网格控件Call SetTittle '初始化网格控件表头End SubPrivate Sub SetTittle() '初始化DataGrid控件的表头信息DataGrid1.Columns(0).Caption = "课程编号"DataGrid1.Columns(1).Caption = "课程名称"DataGrid1.Columns(2).Caption = "学分"DataGrid1.Columns(3).Caption = "学时"DataGrid1.Columns(4).Caption = "考核类型"DataGrid1.Columns(5).Caption = "任课老师"DataGrid1.Columns(6).Caption = "系部编号"DataGrid1.Columns(7).Caption = "上课时间"End SubPrivate Sub Form_Load()DataGrid1.AllowUpdate = False '禁止修改网格控件的内容End Sub。