
(3) crate table score
(cid int,
Sid int,
Cname char(30),
Score_1 int,
Score_2 int,
Score_3 int,
)
这个有问题吧,一个课程编号只对应一个课程名称,一个学生的课程只有一个成绩,怎么你这里有三个成绩的。你可以把cid,sid同时在这个表设置成主键,这样cid和sid就可以唯一标示一个学生的一门课程的成绩了。
给你参考一下我们专业老师写过的程序 如果不懂可以加 裙哦
java语言 /
@author ougaoyan ,date:2008-9-28
学生登录主界面
/
package comsystemjiemian;import javaawtBorderLayout;
import javaawtColor;
import javaawteventActionEvent;
import javaawteventActionListener;import javaxswingImageIcon;
import javaxswingJButton;
import javaxswingJDesktopPane;
import javaxswingJFrame;
import javaxswingJInternalFrame;
import javaxswingJMenu;
import javaxswingJMenuBar;
import javaxswingJMenuItem;
import javaxswingJToolBar;
import javaxswingWindowConstants;
import javaxswingborderBevelBorder;public class StudentMainFrame extends JFrame{
private static final long serialVersionUID = 1696099952059929396L;
private static final JDesktopPane DESKTOP_PANE = new JDesktopPane();
public StudentMainFrame() {
super();
setDefaultCloseOperation(WindowConstantsEXIT_ON_CLOSE); //设置窗口的关闭模式
setLocationByPlatform(true);
setSize(800, 600);
setTitle("学生成绩管理系统");
JMenuBar menuBar = createMenu(); // 调用创建菜单栏的方法
setJMenuBar(menuBar); //将菜单栏加入窗口
JToolBar toolBar = createToolBar(); // 调用创建工具栏的方法
getContentPane()add(toolBar, BorderLayoutNORTH); //将工具栏按固定布局加入窗口
DESKTOP_PANEsetBackground(ColorDARK_GRAY); //设置DESKTOP_PANE的背景色
getContentPane()add(DESKTOP_PANE ); //将DESKTOP_PANE加入窗口
setVisible(true);
}
/
创建工具栏
@return JToolBar
/
private JToolBar createToolBar() { // 创建工具栏的方法
JToolBar toolBar = new JToolBar();
toolBarsetFloatable(false);
toolBarsetBorder(new BevelBorder(BevelBorderRAISED));
JButton infomationManageButton=new JButton("个人信息管理"); //个人信息管理按钮
ImageIcon icon=new ImageIcon("res/gongjulan5jpg");//创建图标方法
infomationManageButtonsetIcon(icon);
infomationManageButtonsetHideActionText(true);
infomationManageButtonaddActionListener(new ActionListener(){ //为学年个人信息管理工具按钮添加监听器
public void actionPerformed(ActionEvent arg0) {
StudentMainFrameaddIFame(new StudentQueryInfoIFrame());
}});
toolBaradd(infomationManageButton);
JButton queryScoresByYearButton=new JButton("学年成绩查询"); //学年成绩查询按钮
ImageIcon queryScoresIcon1=new ImageIcon("res/gongjulan1jpg");//创建图标方法
queryScoresByYearButtonsetIcon(queryScoresIcon1);
queryScoresByYearButtonsetHideActionText(true);
queryScoresByYearButtonaddActionListener(new ActionListener(){ //为学年成绩查询工具按钮添加监听器
public void actionPerformed(ActionEvent arg0) {
StudentMainFrameaddIFame(new QueryScoreByYearIFrame());
}});
toolBaradd(queryScoresByYearButton);
JButton queryScoresByTermButton=new JButton("学期成绩查询"); //学期成绩查询按钮
ImageIcon queryScoresIcon2=new ImageIcon("res/gongjulan3jpg");//创建图标方法
queryScoresByTermButtonsetIcon(queryScoresIcon2);
queryScoresByTermButtonsetHideActionText(true);
queryScoresByTermButtonaddActionListener(new ActionListener(){ //为学期成绩查询工具按钮添加监听器
public void actionPerformed(ActionEvent arg0) {
StudentMainFrameaddIFame(new QueryScoreByTermIFrame());
}});
toolBaradd(queryScoresByTermButton);
JButton queryScoresByAllButton=new JButton("综合成绩查询"); //总成绩查询按钮
ImageIcon queryScoresIcon3=new ImageIcon("res/gongjulan2jpg");//创建图标方法
queryScoresByAllButtonsetIcon(queryScoresIcon3);
queryScoresByAllButtonsetHideActionText(true);
queryScoresByAllButtonaddActionListener(new ActionListener(){
public void actionPerformed(ActionEvent arg0) {
StudentMainFrameaddIFame(new QueryScoreByAllIFrame());
}});
toolBaradd( queryScoresByAllButton);
return toolBar;
}/Method createToolBar/
/
创建菜单栏
/
private JMenuBar createMenu() { // 创建菜单栏的方法
JMenuBar menuBar = new JMenuBar();
JMenu jibenxinxiMenu = new JMenu();// 初始化基本信息菜单
jibenxinxiMenusetIcon(new ImageIcon("res/jibenxinxijpg"));
{
JMenuItem queryInfoMenuItem = new JMenuItem("个人信息查询");
其实每次遇到不会的都来求助是很不方便的 如果你想了解和学习更多的JAVA编程,成为一名真正的JAVA高手,你可以来这个裙,前面三个数是四二六 中间是三九六 后面是二八四 把这串数字连起来就可以了,这是一个高手的学习裙,在这里你可以学习到书上学不到的知识,还有大牛相互讨论并指导你解答哦!
queryInfoMenuItemaddActionListener(new ActionListener(){ //为学年个人信息查询菜单项按钮添加监听器
public void actionPerformed(ActionEvent arg0) {
StudentMainFrameaddIFame(new StudentQueryInfoIFrame());
}}); JMenuItem modifyInfoMenuItem = new JMenuItem ("个人信息维护");
modifyInfoMenuItemaddActionListener(new ActionListener(){ //为学年个人信息修改菜单项添加监听器
public void actionPerformed(ActionEvent arg0) {
StudentMainFrameaddIFame(new StudentModifyInfoIFrame());
}});
JMenuItem modifiPasswordMenuItem = new JMenuItem ("修改密码");
modifiPasswordMenuItemaddActionListener(new ActionListener(){ //为密码修改菜单项添加监听器
public void actionPerformed(ActionEvent arg0) {
StudentMainFrameaddIFame(new StudentModifyPasswordIFrame());
}});
jibenxinxiMenuadd(queryInfoMenuItem);
jibenxinxiMenuadd(modifyInfoMenuItem);
jibenxinxiMenuadd(modifiPasswordMenuItem);
jibenxinxiMenuaddSeparator();
}
JMenu queryScoreMenu = new JMenu(); // 初始化成绩查询菜单
queryScoreMenusetIcon(new ImageIcon("res/chengjichaxunjpg"));
{
JMenuItem queryByYearMItem = new JMenuItem("学年成绩查询");
queryByYearMItemaddActionListener(new ActionListener(){ //为学年成绩查询菜单项添加监听器
public void actionPerformed(ActionEvent arg0) {
StudentMainFrameaddIFame(new QueryScoreByYearIFrame());
}});
JMenuItem queryByTermMItem = new JMenuItem("学期成绩查询");
queryByTermMItemaddActionListener(new ActionListener(){ //为学期成绩查询菜单项添加监听器
public void actionPerformed(ActionEvent arg0) {
StudentMainFrameaddIFame(new QueryScoreByTermIFrame());
}});
JMenuItem queryByAllMItem = new JMenuItem("综合成绩查询");
queryByAllMItemaddActionListener(new ActionListener(){ //为综合成绩查询菜单项添加监听器
public void actionPerformed(ActionEvent arg0) {
StudentMainFrameaddIFame(new QueryScoreByAllIFrame());
}});
queryScoreMenuadd(queryByYearMItem);
queryScoreMenuadd(queryByTermMItem);
queryScoreMenuadd(queryByAllMItem);
queryScoreMenuaddSeparator();
menuBaradd(jibenxinxiMenu); // 添加基本信息菜单到菜单栏
menuBaradd(queryScoreMenu); // 添加成绩管理菜单到菜单栏
return menuBar;
}
}/Method createMenu/
public static void addIFame(JInternalFrame iframe) { // 添加子窗体的方法
DESKTOP_PANEadd(iframe);
}
}
想学习的童鞋秒懂
我给上表起名为
成绩表
程序如下:
select
姓名,(课程01成绩+课程02成绩+课程03成绩)/3
as
平均分;
from
成绩表
into
cursor
s
list
姓名,平均分
您好,你的问题,我之前好像也遇到过,以下是我原来的解决思路和方法,希望能帮助到你,若有错误,还望见谅!在Access中,有时需要在一个窗体中显示另一个窗体中的数据。窗体中的窗体称为子窗体,包含子窗体的窗体称为主窗体。使用主-子窗体的作用是:以主窗体的某个字段为依据,在子窗体中显示与此字段相关的记录,而在主窗体中切换记录时,子窗体的内容也会随着切换。因此,当要显示具有一对多关系的表或查询时,主-子窗体特别有效。但是,并不意味着,主窗体和子窗体必须相关。下面,用两种方法创建主-子窗体:一是同时创建主窗体和子窗体,二是先建立子窗体,再建立主窗体,并将子窗体插入到主窗体中。1.同时创建主窗体和子窗体创建主-子窗体,要求主窗体显示“教师”表的“教师姓名”、“所属系”、“文化程度”和“职称”四个基本信息,子窗体中显示“教师任课表”的“课程编号”和“课程名称”。 *** 作步骤如下: (1)在“成绩管理”数据库窗口下,双击“使用向导创建窗体”,d出确定数据源窗口。(2)在“表/查询”下拉列表框中选择“表:教师”,并将“教师姓名”、“所属系”、“文化程度”和“职称”四个字段添加到“选定的字段”框中。(3)再次在“表/查询”下拉列表框中选择“表:课程”,并将“课程编号”和“课程名称”二个字段添加到“选定的字段”框中。(4)单击“下一步”按钮。如果两个表之间没有建立关系,则会出现一个提示对话框,要求建立两表之间的关系,确认后,可打开关系视图,同时退出窗体向导。如果两表之间已经正确设置了关系,则会进入窗体向导的下一个对话框,确定查看数据的方式。这里保留默认设置。 (5)单击“下一步”按钮,选择子窗体的布局,默认为“数据表”。(6)单击“下一步”按钮,选择窗体的样式,选择 “标准”样式。(7)单击“下一步”按钮,为窗体指定标题,分别为主窗体和子窗体添加标题:“教师任课主窗体”和“教师任课子窗体”。(8)单击“完成”按钮,结束窗体向导。这时,在“成绩管理”数据库窗口下,会看到新增的两个窗体。如果双击“教师任课子窗体”,则只打开单个子窗体。如果双击“教师任课主窗体”,会打开主-子窗体,当主窗体中查看不同教师的记录时,子窗体中会随之出现该教师的任课课程。2.创建子窗体并插入到主窗体中在实际应用中,往往存在这样的情况:某窗体已经建立,后来再将其与另一个窗体关联起来,这时就需要把一个窗体(子窗体)插入到另一个窗体中(主窗体)。使用工具箱上的“子窗体/子报表”控件按钮完成此 *** 作。 窗体“学生选课主窗体”仅有学生“学号”和“姓名”字段,窗体“学生选课子窗体”有学生选课的“课程编号”、“平时成绩”和“考试成绩”字段。要求将“学生选课子窗体”插入到“学生选课主窗体”中,以便查看每个学生的选课成绩。具体步骤如下:(1)在设计视图中,以“学生选课”表为数据源,拖动“课程编号”、“平时成绩”和“考试成绩”字段到设计视图中,以纵向方式排列,命名为“学生选课子窗体”,保存退出。(2)再打开一个新的设计视图,以“学生”表为数据源,拖动“学号”和“姓名”字段到设计视图中,以横向方式排列,适当调整控件大小和位置。(3)在工具箱中确保按下了“工具向导”按钮,再选择“子窗体/子报表”控件按钮 ,在窗体的主体节的合适位置单击鼠标,启动子窗体向导。在“使用现有的窗体”列表框中选择“学生选课子窗体”。(4)单击“下一步”按钮,确定主窗体和子窗体链接的字段。这里选取默认设置,以学生表的“学号”为依据,在子窗体显示与此字段相关的记录。(5)单击“下一步”按钮,指定子窗体的名称,取默认值“学生选课子窗体”。(6)单击“完成”按钮,“学生选课子窗体”插入到当前窗体中。(7)在当前窗体(主窗体)中适当调整子窗体对象的大小至满意为止,保存窗体,命名为“学生选课主窗体”。,非常感谢您的耐心观看,如有帮助请采纳,祝生活愉快!谢谢!
select 学生成绩表学号,学生姓名
from 学生情况表,学生成绩表
where 成绩<60 and 学生情况表学号=学生成绩表学号
系统不明白 select处的学号是那个表的
以上就是关于解答 SQL 数据库 学生表 成绩表全部的内容,包括:解答 SQL 数据库 学生表 成绩表、java语言。编写一个学生成绩管理应用程序,在数据库中建立3张表:Student(id,name,、用VFP解答,编写一个程序,统计成绩管理数据库中每个学生的平均分,等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)