如何(插入到select中)并使WHERE用于插入而不是select?我想在student_id =?处插入值不要选择student_id =?
String aa=model.getValueAt(index, 0).toString();;
String sql="INSERT INTO evaluation (rank) Select Rank from evaluation Where student_id=?";
try {
PreparedStatement ps1=con.prepareStatement(sql);
ps1.setString(1, aa);
if(ps1.executeUpdate() > 0)
{
JOptionPane.showMessageDialog(null, "Evaluation Done");
}
}
catch (Exception ee) {
e1.printStackTrace();
}
答案 0 :(得分:0)
INSERT INTO ... SELECT ...
语句的语法如下:
INSERT INTO table2 (column1, column2, column3, ...)
SELECT column1, column2, column3, ...
FROM table1
WHERE condition;
例如
INSERT INTO Customers (CustomerName, City, Country)
SELECT SupplierName, City, Country FROM Suppliers
WHERE Country='Germany';
如您所见,WHERE
条件适用于SELECT
(即上面给出的示例中的Suppliers
),并且没有办法使其适用于{{1} }(即上面示例中的INSERT
)。
答案 1 :(得分:0)
您不能插入现有行。根据定义,INSERT创建新行。如果要更改现有行,请使用UPDATE,而不要使用INSERT。