技术标签: SQL数据库应用系统开发
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
//current
public class DataManagement {
private static java.sql.Connection con=null;
private ResultSet resultSet=null;
Statement statement=null;
private static String driver="com.microsoft.sqlserver.jdbc.SQLServerDriver";
private static String url="jdbc:sqlserver://localhost:1433;databaseName=teaching";
private static String user="sa",password="watchdog";
public static void main(String[] args) throws Exception {
DataManagement test=new DataManagement();
if(!test.isLink())
System.out.println("no");
System.out.println(DataManagement.selectIsIdfromstudents("20150101001"));
DataManagement.con.close();
}
public boolean studentToDatabase(StudentInformation sInfo){
return false;
}
public static boolean setStudentsInDatabase(StudentInformation temporaryStudent,StudentInformation currentStudent) throws Exception{
DeletStudent(currentStudent.getId());
temporaryStudent.setBaseGradeReport(currentStudent.getBaseGradeReport());
Addstudent(temporaryStudent);
return true;
}
/**
* �����ݿ���ɾ��һ��ѧ����Ϣ
* @param id ѧ��
* @return �Ƿ�ɹ�
*/
public static boolean DeletStudent(String id){
try {
con.createStatement().executeUpdate("DELETE FROM students WHERE studentid = '"+id+"'");
con.createStatement().executeUpdate("DELETE FROM elective WHERE studentid = '"+id+"'");
} catch (SQLException e) {
return false;
}
return true;
}
public static boolean Addstudent(StudentInformation stu){
try {
con.createStatement().executeUpdate("insert into students values ('"
+ stu.getId()+"','"+stu.getClassid()+"','"+stu.getName()
+"',"+stu.getGender()+","+stu.getGraduated()+ ")");
// System.out.println("noooooooooooooooooooooooo1");
} catch (SQLException e) {
return false;
}
for(BaseGradeReport i:stu.getBaseGradeReport()){
try {
// System.out.println("noooooooooooooooooooooooo");
con.createStatement().executeUpdate("insert into elective values ('"
+stu.getId()+"','"
+i.getSubjectid()
+ "',"+i.getGrade()+")");
} catch (SQLException e) {
System.out.println("insert into elective values ('"
+stu.getId()+"','"
+i.getSubjectid()
+ "',"+i.getGrade()+")");
e.printStackTrace();
}
}
return true;
}
public static boolean Addstudent(StudentInformation temporaryStudent,StudentInformation currentStudent){
temporaryStudent.setBaseGradeReport(currentStudent.getBaseGradeReport());
return Addstudent(temporaryStudent);
}
public DataManagement(){
if(!isLink())
System.out.println("no");
}
/**
* ��ȡ���а༶
* @return һ����������Classes�����ArrayList
* @throws Exception
*/
public static ArrayList<Classes> selectAllClasses() throws Exception
{
ResultSet rs=null;
ArrayList<Classes> classes=new ArrayList<Classes>();
try
{
rs = con.createStatement().executeQuery("select * FROM classes");
}
catch(Exception e)
{
throw e;
}
if(rs!=null){
while(rs.next()){
classes.add(new Classes(rs.getString(1),rs.getString(2)));
}
}
return classes;
}
/**
*
* @return ��һ��ѧ���Ļ�����Ϣ
* @throws SQLException
*/
public static StudentInformation greateStudent() throws SQLException{
return greateStudent(StudentInformation.START);
}
/**
* ����һ��ѧ��
* @param number �ڼ���ѧ��
* @return һ��ѧ���Ļ�����Ϣ
* @throws SQLException
*/
public static StudentInformation greateStudent(int number) throws SQLException{
StudentInformation sInfo=new StudentInformation();
number=number<StudentInformation.START?1:number;
int count=Integer.valueOf(countStudents());
if(count==0){
new ChildWindow().showString("û��ѧ���ˣ����½�ѧ����");
return StudentInformation.sInfoFormat();
}
number=number<=count?number:count;
System.out.print("��ǰѧ��"+number);
String []str=selectStudentFromStudents(number);
StudentInformation.number=number;
StudentInformation.end=Integer.valueOf(countStudents());
sInfo.setId(str[0]);
sInfo.setClassid(str[1]);
sInfo.setName(str[2]);
sInfo.setGender(str[3]);
sInfo.setGraduated(str[4]);
sInfo.setClassname(selectClassnameFromClasses(str[1]));
String[] subjectid=selectSubjectidFromAlective(str[0]);
ArrayList<BaseGradeReport> baseGradeReport=new ArrayList<BaseGradeReport>();
for(int i=0;i<subjectid.length;i++){
baseGradeReport.add(new BaseGradeReport(
subjectid[i],
selectSubjectnameFromSubjects(subjectid[i]),
selectGradeFromAlective(str[0],subjectid[i])
));
}
sInfo.setBaseGradeReport(baseGradeReport);
return sInfo;
}
/**
* �жϼ������������ݿ������Ƿ�ɹ�
* @return Boolean
*/
public static boolean isLink(){
try {
Class.forName(driver);
}catch (ClassNotFoundException e) {
System.out.println("��������ʧ��");
}
try {
con=DriverManager.getConnection(url,user,password);
} catch (SQLException e) {
System.out.println("����ʧ��");
}
if(con!=null)
return true;
return false;
}
/**
* ͳ��ѧ������
* @return ѧ������
* @throws SQLException
*/
public static String countStudents() throws SQLException{
ResultSet rs=null;
try
{
rs = con.createStatement().executeQuery("select count(studentid)from students");
}
catch(Exception e)
{
throw e;
}
if(rs!=null){
if(rs.next())
return rs.getString(1);
}
return "0";
}
/**
* ����ѧ����Ŀ�ɼ�
* @param id ѧ��
* @param subjectid �γ̺�
* @return �ɼ�
* @throws SQLException
*/
private static String selectGradeFromAlective(String id,String subjectid) throws SQLException{
ResultSet rs=null;
try
{
rs = con.createStatement().executeQuery("select grade FROM elective where elective.studentid="
+"'"+id+"'"+"and elective.subjectid='"+subjectid+"'");
}
catch(Exception e)
{
throw e;
}
if(rs!=null){
if(rs.next())
return rs.getString(1);
}
return "��";
}
/**
* ͨ��ѧ�Ų���ѡ�γ̺�
* @param id ѧ��
* @return һ�������γ̺ŵ�ArrayList<String>
* @throws SQLException
*/
private static String[] selectSubjectidFromAlective(String id) throws SQLException{
ArrayList<String> subjectid=new ArrayList<String>();
ResultSet rs=null;
try
{
rs = con.createStatement().executeQuery("select subjectid FROM elective where elective.studentid="+"'"+id+"'");
// System.out.println("select subjectid FROM elective where elective.studentid="+"'"+id+"'");
}
catch(Exception e)
{
throw e;
}
if(rs!=null){
while(rs.next()){
subjectid.add(rs.getString(1)) ;
//System.out.println(rs.getString(1));
}}
// System.out.println("*"+(String[])subjectid.toArray(new String[subjectid.size()]));
return (String[])subjectid.toArray(new String[subjectid.size()]);
}
/**
* ͨ���༶����Classes����Ѱ�Ұ༶��
* @param classid
* @return �༶����
* @throws SQLException
*/
private static String selectClassnameFromClasses(String classid) throws SQLException{
if(classid.equals(" ")){
return null;
}
ResultSet rs=null;
try
{
rs = con.createStatement().executeQuery("select classname FROM classes where classes.classid="+"'"+classid+"'");
System.out.println("select classname FROM classes where classes.classid="+"'"+classid+"'");
}
catch(Exception e)
{
throw e;
}
if(rs!=null){
rs.next();
return rs.getString(1);
}
return "��";
}
/**
* ��Students����Ѱ��ѧ������Ϣ
* @param number
* @return һ������ѧ��Ψһ���Ե�����
* @throws SQLException
*/
public static String[] selectStudentFromStudents(int number) throws SQLException
{
ResultSet rs;
try
{
Statement stmt=con.createStatement();
rs = stmt.executeQuery(
"select top 1 * from (select top "+number+
"* FROM students order by studentid )as A order by A.studentid desc");
}
catch(Exception e)
{
throw e;
}
if(rs.next()){
return new String[]{
rs.getString(1),rs.getString(2),rs.getString(3),rs.getString(4),rs.getString(5)};
}
return null;
}
/**
* ͨ���γ̴�����Subjects����Ѱ�����Ŀγ���
* @param subjectid �γ̴���
* @return ���
* @throws SQLException
*/
public static String selectSubjectnameFromSubjects(String subjectid) throws SQLException{
ResultSet rs=null;
try
{
rs = con.createStatement().executeQuery("select subjectname FROM subjects where subjects.subjectid='"+subjectid+"'");
}
catch(Exception e)
{
throw e;
}
if(rs!=null){
if(rs.next())
return rs.getString(1);
}
return "��";
}
/**
* ��ȡSubjects���пγ̴���
* @return ����ȫ���γ̴���ArrayList<String>
* @throws SQLException
*/
public static ArrayList<String> selectSubjectidFromSubjects() throws SQLException{
ArrayList<String> s=new ArrayList<String>();
ResultSet rs=null;
try
{
rs = con.createStatement().executeQuery("select subjectid FROM subjects ");
}
catch(Exception e)
{
throw e;
}
if(rs!=null){
while(rs.next())
s.add(rs.getString(1)) ;
}
return s;
}
/**
* ��ȡ���ѧ��id
* @return ѧ��id
* @throws SQLException
*/
public static String selectMaxid(){
ResultSet rs=null;
try {
rs = con.createStatement().executeQuery("select max(studentid)from students");
} catch (SQLException e) {
// TODO �Զ����ɵ� catch ��
e.printStackTrace();
}
try {
if(rs.next()){
if(!(rs.getString(1)==null))
return rs.getString(1);
}
} catch (SQLException e) {
// TODO �Զ����ɵ� catch ��
e.printStackTrace();
}
return "0";
}
/**
* ��ѯѧ���Ƿ����
* @return ѧ��id
* @throws SQLException
*/
public static boolean selectIsIdfromstudents(String id){
ResultSet rs=null;
try {
rs = con.createStatement().executeQuery("select count(studentid)from students WHERE studentid = '"+id+"'");
} catch (SQLException e) {
// TODO �Զ����ɵ� catch ��
e.printStackTrace();
}
try {
if(rs.next()){
if(!(rs.getString(1).equals("0")))
return true;
}
} catch (SQLException e) {
// TODO �Զ����ɵ� catch ��
e.printStackTrace();
}
return false;
}
/**
* �Ͽ�����
*/
public static void close(){
try {
con.close();
} catch (SQLException e) {
// TODO �Զ����ɵ� catch ��
e.printStackTrace();
}
}
}
文章浏览阅读4.2k次,点赞6次,收藏30次。1. 基本概念图分为无向图和有向图。与一个顶点相邻接的顶点数叫做该顶点的度。在有向图中,进入一个顶点的弧叫做该顶点的入度,从一个顶点发出的弧叫做该顶点的出度。在无向图中,若图中任意一对顶点都是连通的,则称此图是连通图。在有向图中,若任意一对顶点u和v间存在一条从u到v的路径和从v到u的路径,则称此图是强连通图。无向图的一个极大连通子图称为该图的一个连通分量。有向图的一个极大强连通子..._广度优先搜索和深度优先搜索c++
文章浏览阅读613次。题目描述津津上初中了。妈妈认为津津应该更加用功学习,所以津津除了上学之外,还要参加妈妈为她报名的各科复习班。另外每周妈妈还会送她去学习朗诵、舞蹈和钢琴。但是津津如果一天上课超过八个小时就会不高兴,而且上得越久就会越不高兴。假设津津不会因为其它事不高兴,并且她的不高兴不会持续到第二天。请你帮忙检查一下津津下周的日程安排,看看下周她会不会不高兴;如果会的话,哪天最不高兴。输入格式输入包括7..._洛谷p1085c
文章浏览阅读898次。abstract (关键字)抽象['.bstr.kt]accessvt.访问,存取['.kses]'(n.入口,使用权)algorithmn.算法['.lg.riem]annotation[java]代码注释[.n.u'tei..n]anonymousadj.匿名的[.'n.nim.s]'(反义:directly adv.直接地,..._string转byte[]数组后exception in thread "main" java.lang.numberformatexcepti
文章浏览阅读2.4w次,点赞9次,收藏56次。文章目录一、sort 排序1、语法2、参数说明3、实例二、uniq 去重1、uniq使用2、sort和uniq去重结果对比三、wc 统计一、sort 排序sort命令用于 对文本文件内容,以行为单位来排序。sort命令以空格作为字段分隔符,将一行分割为多个关键字对文件进行排序。需要注意的是除非你将输出重定向到文件中,否则sort命令并不对文件内容进行实际的排序(即文件内容没有修改),只是..._sort 去重
文章浏览阅读1.7k次。开发板:smdk6410系统:Linux按键是经常要用的,通过按键产生中断,可以处理不同的功能,键盘的输入就是这么一个原理,键盘也可以作为一个字符设备去写,在 驱动之路二 中就详细阐述过设备分类的概念,也将LED驱动写成了misc设备的,在这要将button驱动基于input设备去写,现在开始写了,先是头文件 s3c_button.h#ifndef __BU_linux button input
文章浏览阅读7.1k次。一、概述Spring Boot设计目的是用来简化新Spring应用的初始搭建以及开发过程。Spring Boot并不是对Spring功能上的增强,而是提供了一种快速使用Spring的方式。二、特性 ①创建独立的Spring应用程序 ②嵌入的Tomcat,无需部署WAR文件 ③简化Maven配置 ④自动配置Spring ⑤提供生产就绪型功能,如指标,健康检查和外部配置 ⑥开箱即用,没有代码生成,也无..._war 包 servletcontextlistener @enablescheduling
文章浏览阅读608次。乱七八糟的matlab笔记_row在matlab
文章浏览阅读5.4k次。提供:ZStack云计算 前言Nagios 4是很流行的开源监控系统。本文将介绍如何在Ubuntu 14.04上进行该系统的安装与一些基本配置,配置完毕后可以在其Web界面对你的主机进行监控。本文还将涉及Nagios Remote Plugin Executor(NRPE)插件的优化,该插件安装在需要被监控的主机上作为agent使用。使用Nagios,我们可以随时查看主机的资源使用情况、确保重要的服_nagios4
文章浏览阅读642次,点赞15次,收藏6次。当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。工具都帮大家整理好了,安装就可直接上手!例如:将原始字段中的。
文章浏览阅读283次。uORB是PX4/Pixhawk系统中非常重要且关键的模块之一,是用于无人机模块间通信的协议机制。本篇将详细介绍uORB并详细拆解uORB消息读写与自定义实验全流程(二)。_uorb通信
文章浏览阅读603次。服务器端epoll.c#include <stdio.h>#include <string.h>#include <stdlib.h>#include <assert.h>#include <unistd.h>#include <sys/socket.h>#include <netinet/in.h&g_void epoll_add(int epfd, int fd){ struct epoll_event ev; ev.data.fd = fd; ev
文章浏览阅读730次。1、下载VS2013,QT5.8.0,qt-vs-tools-msvc2013-2.1.1。 VS2013版本为:Visual Studio Ultimate 2013 with Update 4 - 简体中文.iso QT5.8.0版本为:qt-opensource-windows-x86-msvc2013_64-5.8.0.exe,下载地址为:http://download.qt.io/a..._vs2013用qt哪个版本