私はプログラミングとJavaにまったく慣れていません。jtextarea の最初の行を削除する方法を知りたいです。アプリケーションのコーディングを投稿することはできますが、それは必要ないと思いますし、電話中です。jtextfield Java の最初の行を削除する方法を教えてください。
わかりました...私がやろうとしていることのコードはここにあります->
String x = (String) jComboBox1.getSelectedItem();
String z = JOptionPane.showInputDialog("Please enter new name for Database");
try{
Class.forName("java.sql.DriverManager");
Connection con = (Connection)
DriverManager.getConnection("jdbc:mysql://localhost:"+GlobalParams.portvar+"/",""+k,""+j);
Statement stmnt = (Statement) con.createStatement();
String query3 = "Create database "+z;
stmnt.executeUpdate(query3);
String query = "use "+x;
stmnt.executeQuery(query);
String query2 = "show tables";
Statement stmnt2 = (Statement) con.createStatement();
ResultSet rs = stmnt2.executeQuery(query2);
while (rs.next()){
String dname = rs.getString("Tables_in_"+x);
if(jTextArea1.getText().equals("")){
jTextArea1.setText(jTextArea1.getText()+dname);
}
else{
jTextArea1.setText(jTextArea1.getText()+"\n"+dname);
}
String y = jTextArea1.getText();
Scanner scanner = new Scanner(y);
while (scanner.hasNextLine()) {
String line = scanner.nextLine();
String query4 = "RENAME TABLE "+x+"."+line+" TO "+z+"."+line;
//I will add remove first line code here.--------------------------------------
stmnt.executeUpdate(query4);
String query5 = "drop database "+x;
stmnt.executeUpdate(query5);
}}}
catch(Exception e){
JOptionPane.showMessageDialog(this,e.getMessage());
}
ご覧のとおり、mysql でデータベースの名前を変更するプログラムを作成しようとしています。正常に動作しますが、テーブルを 1 つだけ移動すると、新しいデータベースに「テーブルが既に存在します (移動したのと同じテーブル名)」というエラーが表示されます。テキストエリアに存在する行からテーブル名を取得するため、同じ行を何度も読んでいると思われます。したがって、私の考えは、コードが完了するたびに最初の行を削除して、同じテーブル名を 2 回使用しないようにすることです。やりたいことを明確にするために->テキストエリアが次の行で構成されているとします->
line 1
line 2
line 3
line 4
so on...
コードの実行後、1行目を削除し、テキストエリアに存在する新しいテキストを->にする必要があります
line 2
line 3
line 4
line 5
so on...