从 SQL 中单独的 table 获取 ID
Fetch ID from separate table in SQL
我有两张表,一张叫做会员:
NAME | PERSONALNUMBER | ID |
LUDDE | 9409251171 | 1 |
还有一个叫船:
TYPE | LENGTH | MEMBERID |
Motorsailer | 100.0 | null |
我想从成员那里获取 ID
并将其存储在 Boats 的 MEMBERID
中。
现在我尝试通过这样做从特定成员那里获取 ID:
public void createBoat(Boat boat, Member member) {
try {
connection.createStatement().execute("Insert into BOAT (Type, Length) values " + boat.toString());
connection.createStatement().executeQuery("SELECT ID FROM MEMBER WHERE NAME LIKE " + "'" + member.getName() + "'" );
} catch(SQLException e) {
System.out.println(e.getMessage());
}
}
但是,我得到的是空值,而不是任何真实数据。
第一个 select 来自 Member
table 的特定 id 使用 select 语句。然后在 Boats
table.
的插入语句中使用 member id
您可以使用以下内容。您可能需要做一些小的修改。我不知道船的长度是多少,所以我使用 100 作为长度。另外我假设会员ID是一个整数
public void createBoat(Boat boat, Member member) {
try {
ResultSet rs=connection.createStatement().executeQuery("SELECT ID FROM MEMBER WHERE NAME =" + "'" + member.getName() + "'");
while(rs.next()){
int memberId=rs.getInt("ID");
connection.createStatement().execute("Insert into BOAT (Type, Length,MEMBERID) values (" + boat.toString() ",100,"+memberId+" )");
}
} catch (SQLException e) {
System.out.println(e.getMessage());
}
}
我有两张表,一张叫做会员:
NAME | PERSONALNUMBER | ID |
LUDDE | 9409251171 | 1 |
还有一个叫船:
TYPE | LENGTH | MEMBERID |
Motorsailer | 100.0 | null |
我想从成员那里获取 ID
并将其存储在 Boats 的 MEMBERID
中。
现在我尝试通过这样做从特定成员那里获取 ID:
public void createBoat(Boat boat, Member member) {
try {
connection.createStatement().execute("Insert into BOAT (Type, Length) values " + boat.toString());
connection.createStatement().executeQuery("SELECT ID FROM MEMBER WHERE NAME LIKE " + "'" + member.getName() + "'" );
} catch(SQLException e) {
System.out.println(e.getMessage());
}
}
但是,我得到的是空值,而不是任何真实数据。
第一个 select 来自 Member
table 的特定 id 使用 select 语句。然后在 Boats
table.
member id
您可以使用以下内容。您可能需要做一些小的修改。我不知道船的长度是多少,所以我使用 100 作为长度。另外我假设会员ID是一个整数
public void createBoat(Boat boat, Member member) {
try {
ResultSet rs=connection.createStatement().executeQuery("SELECT ID FROM MEMBER WHERE NAME =" + "'" + member.getName() + "'");
while(rs.next()){
int memberId=rs.getInt("ID");
connection.createStatement().execute("Insert into BOAT (Type, Length,MEMBERID) values (" + boat.toString() ",100,"+memberId+" )");
}
} catch (SQLException e) {
System.out.println(e.getMessage());
}
}