博客
关于我
Web实战之VScode查询SQL server选课信息,输出表格
阅读量:734 次
发布时间:2019-03-21

本文共 2910 字,大约阅读时间需要 9 分钟。

实战记录:使用JavaScript与SQL Server实现大学生网上选课系统的功能扩展

引言

在技术实战系列中,我们将重点介绍如何使用 JavaScript 与 SQL Server 实现大学生网上选课系统的功能扩展。本节将详细讲解如何查询选课信息并实现扩课功能。

第一步:创建HTML表格

首先,我们需要在 HTML 文件中创建一个表格来展示课程信息。添加如下代码:

课程编号 课程名称 上课地点 学分 学期 核定人数 选课人数

第二步:建立与数据库的连接并执行查询

接下来,我们需要通过 JavaScript 连接到 SQL Server 并执行查询。添加以下脚本:

window.onload = function() {    //数据库连接配置    const conn = new ActiveXObject("ADODB.Connection");    const rs = new ActiveXObject("ADODB.Recordset");    const strDSN = "Driver={SQL Server};SERVER=DESKTOP-U4DC9JE;UID=sa;PWD=;DATABASE=school";    //查询语句    const sql = "SELECT id, count(sid) AS c, name, dd, xf, xq, rs FROM Course c1, Choose c2 WHERE c1.tid='0101' AND c1.tid=c2.tid AND c1.id=c2.cid GROUP BY id, name, dd, xf, xq, rs";    try {        conn.Open(strDSN);        rs.open(sql, conn);    } catch (e) {        alert(e.message);    }    //输出结果    let name = '';    let id = '';    let dd = '';    let xf = '';    let xq = '';    let rsh = '';    let count = '';    while (!rs.EOF) {        id = rs.Fields(1).Value;        name = rs.Fields(2).Value;        dd = rs.Fields(3).Value;        xf = rs.Fields(4).Value;        xq = rs.Fields(5).Value;        rsh = rs.Fields(6).Value;        count = rs.Fields('c').Value;        //创建新行        const newRow = document.getElementById('mytableBody').insertRow(1);        newRow.className = 'dataRow';        //添加单元格        newRow.appendChild(newRow.insertCell(0).innerHTML = ``);        newRow.appendChild(newRow.insertCell(1).innerHTML = ``);        newRow.appendChild(newRow.insertCell(2).innerHTML = ``);        newRow.appendChild(newRow.insertCell(3).innerHTML = ``);        newRow.appendChild(newRow.insertCell(4).innerHTML = ``);        newRow.appendChild(newRow.insertCell(5).innerHTML = ``);        newRow.appendChild(newRow.insertCell(6).innerHTML = ``);    }    rs.moveNext();}

第三步:实现扩课功能

为了实现扩课功能,我们需要添加一个按钮并在点击时调用相应的函数。在 HTML 中添加以下内容:

function add() {    const id = document.getElementById('id2').value;    const rise = document.getElementById('rise').value;    const j = parseInt(rise);    if (j > 0) {        const conn = new ActiveXObject("ADODB.Connection");        const strDSN = "Driver={SQL Server};瑟 ErlçraftSERVER=DESKTOP-U4DC9JE;UID=sa;PWD=mtch1997214;DATABASE=school";        try {            conn.Open(strDSN);            const sql = `UPDATE Course SET rs=rs + ${j} WHERE id='${id}'`;            const execute = conn.execute(sql);        } catch (e) {            alert(e.description);        }        alert("扩课操作成功,页面将自动刷新以显示更新");        location.reload();    } else {        alert("扩选人数必须大于0!");    }}

说明

以上代码实现了以下功能:

  • 通过 JavaScript 与 SQL Server 连接并执行查询,动态输出选课信息。
  • 提供了扩课功能,允许教师对特定课程的选课人数进行调整。
  • 在使用该系统时,请确保:

  • 数据库连接信息配置正确。
  • 扩课操作完成后手动刷新页面以确保数据更新。
  • 如果您在使用过程中遇到任何问题,请参考相关技术文档或联系系统管理员进行指导。

    转载地址:http://xsagz.baihongyu.com/

    你可能感兴趣的文章
    QT教程1:ubuntu18.04安装QT5
    查看>>
    POP-一个点击带有放大还原的动画效果
    查看>>
    POP3 协议在计算机网络中的优缺点
    查看>>
    qt批量操作同类型控件
    查看>>
    Portaudio笔记-WASAPI
    查看>>
    position:fixed失效情况
    查看>>
    Qt开发笔记:QGLWidget、QOpenGLWidget详解及区别
    查看>>
    Position属性四个值:static、fixed、absolute和relative的区别和用法
    查看>>
    POSIX thread编程中关于临界区内条件变量的分析
    查看>>
    POSIX与程序可移植性
    查看>>
    posix多线程有感--自旋锁
    查看>>
    SpringBoot中集成海康威视SDK实现布防报警数据上传/交通违章图片上传并在linux上部署(附示例代码资源)
    查看>>
    POSIX标准和XSI扩展
    查看>>
    post install error,please remove node_moules before retry
    查看>>
    postcss-pxtorem 参数之selectorBlackList、exclude的用法
    查看>>
    Postek博思得标签打印机更换电脑,打印出来标签空白
    查看>>
    postfix+ dovecot搭建邮件服务器
    查看>>
    postfix在邮件服务器中的使用
    查看>>
    PostGIS 3.1.2软件安装详细教程(地图工具篇.8)
    查看>>
    PostGIS中获取所有EPSG的编码以及对应Proj4字符串
    查看>>