基本的に、ログイン後にIDや名前などをデータベースに追加できる別のスキャナー入力を追加する必要があるため、プログラムで設定したものを使用する必要はありません。設定された挿入値を変更するとデータベースが更新されるため、接続は問題ありません。入力後にデータベースを更新するコードなしでユーザーが値を挿入する方法がわかりません。
import java.sql.*;
import java.util.Scanner;
public class JDBCInsertValues{
static final String DRIVER = "com.mysql.jdbc.Driver"; // JDBC driver
static final String DATABASE = "test"; // the database name
static final String HOST = "10.1.63.200"; // the database host IP
// the full URL:
static final String DATABASE_URL =
"jdbc:mysql://" + HOST + "/" + DATABASE;
public static void main(String[] args) {
System.out.println("Inserting values into MySQL database table...");
Connection con = null;
try{
Class.forName(DRIVER);
Scanner keyboard = new Scanner(System.in);
System.out.print("Login: ");
String login = keyboard.next();
System.out.print("Password: ");
String password = keyboard.next();
con = DriverManager.getConnection(DATABASE_URL,login,password);
try{
Statement st = con.createStatement();
String sql = "INSERT INTO Authors VALUES(67,\"Mark\",\"Cooper\")";
System.out.println(sql);
int val = st.executeUpdate(sql);
System.out.println(val + " rows inserted.");
}
catch (SQLException s){
System.out.println("SQL statement is not executed!");
s.printStackTrace();
}
}
catch (Exception e){
e.printStackTrace();
}
}
}