我正在读表:
证书,其中我提到了Cert_ID自动增量和Cert_Name n Desc。
现在我已将Cert_ID声明为PK。与同一数据类型的Coach表中的FK有关。
教练表
CREATE TABLE School.CricketCoach (Coach_Index INTEGER NOT NULL AUTO_INCREMENT, Coach_ID VARCHAR(25)NOT NULL, Coach_FName VARCHAR(25)NOT NULL, Coach_LName VARCHAR(25)NOT NULL, Coach_Email VARCHAR(25)NOT NULL, Coach_Password VARCHAR(25)NOT NULL, Coach_DOB DATE NOT NULL, Coach_DOJ DATE NOT NULL, Coach_Phone VARCHAR(25), Coach_Address VARCHAR(25), Coach_City VARCHAR(25), Coach_County VARCHAR(25), Coach_Country VARCHAR(25), Coach_NIC VARCHAR(25), Coach_AcountCreateDate TIMESTAMP DEFAULT CURRENT_TIMESTAMP, 更新CURRENT_TIMESTAMP上的Coach_AcountModifiedDate TIMESTAMP DEFAULT CURRENT_TIMESTAMP, Cert_ID VARCHAR(3)NOT NULL,
证书表 CREATE TABLE School.CricketCertificate (Cert_ID INTEGER(3)NOT NULL AUTO_INCREMENT, Cert_Name VARCHAR(25), Cert_Description VARCHAR(25),
现在我有一个表格,我打电话给证书表" Cert_Name"用于" Select-Option"。它完全显示,因为我通过TreeSet调用它并在窗体中显示。
现在我的问题是我从表单中获取Cert_Name ..但是我如何使查询在Coach表的FK字段的Cert_ID中输入它。
我应该制作2种不同的准备声明吗?我应该把它存放在SET吗? Map或Just String?
我在表单开始从doget方法传递这个..通过Java类:
班级是帐户: public TreeSet cricketCertificate()抛出SQLException {
String sql= "select Cert_Name from CricketCertificate";
PreparedStatement stmt = conn.prepareStatement(sql);
ResultSet rs= stmt.executeQuery();
while(rs.next()){
certifyLevel.add(rs.getString("Cert_Name"));
}
rs.close();
return certifyLevel;
}
Servlet:doGet: 帐户cer =新帐户(conn);
TreeSet<String> certificate = new TreeSet<String>();
try {
certificate= cer.cricketCertificate();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
request.setAttribute("certificatename", certificate);
JSP表单: *教练证书
<select name ="certificate" class="req">
<option >Select</option>
<%
TreeSet<String> cert = (TreeSet<String>)request.getAttribute("certificatename");
for (String element : cert ){%>
<option >
<%=element%>
</option>
<%} %>
</select>
我需要通过查询直接发送Cert_ID ..这可能吗? 我很长时间没有SQL了...我只是被困:S INSERT INTO School.CricketCoach(Coach_ID,Coach_FName,Coach_LName,Coach_Email,Coach_Password,Coach_DOB,Coach_DOJ,Coach_Phone,Coach_Address,Coach_City,Coach_County,Coach_Country,Coach_NIC,Cert_ID)VALUES(&#39; CRC00001MA&#39;,&#39; First姓名&#39;,&#39;姓氏&#39;,&#39; email@gmail.com',&#39;密码&#39;,&#39; 1982/01/22&#39;, &#39; 2014/04/04&#39;,&#39; 0042358458236&#39;,&#39; Crang&#39;,&#39; Buch&#39;,&#39; Buch&#39;,& #39; Ro&#39;,&#39; 11111111111111&#39;,&#39;从CricketCertificate中选择Cert_ID,其中Cert_Name =&#34; ICC LEVEL 1&#34;&#39;);