Hi, I am working on a project using Java and embedded SQL in the Java. I have gotten the SQL to successful do what I need it to (In this case, create tables and insert data into them). However, I am having a difficult time with IO. The goal is input a name which is associated with a table I have created, retrieve a grade for that name, and output it to the screen. Here is my code thus far, which I have not been successful in implementing IO. Thanks for your help. Sincerely, Jason
import java.sql.*;
import com.sybase.jdbcx.SybDriver;
import java.io.*;
import java.util.*;
class lab8 {
public static void main (String args[]) {
class IO {
public static void main (String[] args) throws IOException {
InputStreamReader inBuff = new InputStreamReader(System.in);
BufferedReader stdin = new BufferedReader ( inBuff );
System.out.print ("Student's Name: ");
try {
SybDriver sybdriver =
(SybDriver) Class
. forName("com.sybase.jdbc2.jdbc.SybDriver")
. newInstance();
sybdriver.setVersion(
com.sybase.jdbcx.SybDriver.VERSION_5 );
DriverManager.registerDriver(sybdriver);
Connection connection = null;
String server = "database";
String port = "4101";
String database = "c670ab";
String username = args[0];
String password = args[1];
String url = "jdbc:sybase:Tds:"
+ server + ":"
+ port + "/"
+ database;
connection =
DriverManager.getConnection(url, username, password);
Statement stat = connection.createStatement();
stat.executeUpdate(
"CREATE TABLE Student (Name CHAR(10),StudentNumber INT, Class INT, Major CHAR(10))" );
stat.executeUpdate(
"INSERT INTO Student VALUES ( 'Smith',17,1, 'CS')" );
stat.executeUpdate(
"INSERT INTO Student VALUES ( 'Brown',8,2, 'CS')" );
stat.executeUpdate(
"CREATE TABLE Course (CourseName CHAR(30),CourseNumber VARCHAR(10),CreditHours INT, Department CHAR(5))" );
stat.executeUpdate(
"INSERT INTO Course VALUES ( 'Intro to Computer Science','CS1310',4,'CS')" );
stat.executeUpdate(
"INSERT INTO Course VALUES ( 'Data Structures','CS3320',4,'CS')" );
stat.executeUpdate(
"INSERT INTO Course VALUES ( 'Discrete Mathematics','MATH2410',3,'MATH')" );
stat.executeUpdate(
"INSERT INTO Course VALUES ( 'Database','CS3380',3,'CS')" );
stat.executeUpdate(
"CREATE TABLE Section (SectionIdentifier VARCHAR(4),CourseNumber VARCHAR(10), Semester CHAR(7), Year VARCHAR(2), Instructor CHAR(20))" );
stat.executeUpdate(
"INSERT INTO Section VALUES ( '85','MATH2410','Fall','98','King' )" );
stat.executeUpdate(
"INSERT INTO Section VALUES ( '92','CS1310','Fall','98','Anderson')" );
stat.executeUpdate(
"INSERT INTO Section VALUES ( '102','CS3320','Spring','99','Knuth')" );
stat.executeUpdate(
"INSERT INTO Section VALUES ( '112','MATH2410','Fall','99','Chang')" );
stat.executeUpdate(
"INSERT INTO Section VALUES ( '119','CS1310','Fall','99','Anderson')" );
stat.executeUpdate(
"INSERT INTO Section VALUES ( '135','CS3380','Fall','99','Stone')" );
stat.executeUpdate(
"CREATE TABLE Grade_Report (StudentNumber VARCHAR(4),SectionIdentifier VARCHAR(4),Grade CHAR(1))" );
stat.executeUpdate(
"INSERT INTO Grade_Report VALUES ( '17','112','B')" );
stat.executeUpdate(
"INSERT INTO Grade_Report VALUES ( '17','119','C')" );
stat.executeUpdate(
"INSERT INTO Grade_Report VALUES ( '8','85','A')" );
stat.executeUpdate(
"INSERT INTO Grade_Report VALUES ( '8','92','A')" );
stat.executeUpdate(
"INSERT INTO Grade_Report VALUES ( '8','102','B')" );
stat.executeUpdate(
"INSERT INTO Grade_Report VALUES ( '8','135','A')" );
stat.executeUpdate(
"CREATE TABLE Prerequisite (CourseNumber VARCHAR(10),PrerequisiteNumber VARCHAR(10))" );
stat.executeUpdate(
"INSERT INTO Prerequisite VALUES ( 'CS3380','CS3320')" );
stat.executeUpdate(
"INSERT INTO Prerequisite VALUES ( 'CS3380','MATH2410')" );
stat.executeUpdate(
"INSERT INTO Prerequisite VALUES ( 'CS3320','CS1310')" );
ResultSet query =
stat.executeQuery("SELECT * FROM Grade_Report");
while( query.next() ){
System.out.println( query.getString( "Grade") );
}
query.close();
stat.executeUpdate( "DROP TABLE Student" );
stat.executeUpdate( "DROP TABLE Course" );
stat.executeUpdate( "DROP TABLE Section" );
stat.executeUpdate( "DROP TABLE Grade_Report" );
stat.executeUpdate( "DROP TABLE Prerequisite" );
stat.close();
connection.close();
}
catch (Exception e) { System.out.println( "error" ); }
} }