我有一個@符號分隔一個輸入字符串如如何動態地形成插入查詢在這種情況下
[email protected]
我有如圖所示
mysql> desc document;
+-----------------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------------+-------------+------+-----+---------+----------------+
| document_id | int(11) | NO | PRI | NULL | auto_increment |
| T1 | varchar(50) | YES | | NULL | |
| T2 | varchar(50) | YES | | NULL | |
| T3 | varchar(50) | YES | | NULL | |
| T4 | varchar(50) | YES | | NULL | |
| T5 | varchar(50) | YES | | NULL | |
| T6 | varchar(50) | YES | | NULL | |
| T7 | varchar(50) | YES | | NULL | |
| T8 | varchar(50) | YES | | NULL | |
| T9 | varchar(50) | YES | | NULL | |
| T10 | varchar(50) | YES | | NULL | |
| vendor_brand_id | varchar(10) | YES | | NULL | |
| vendor_id | varchar(10) | YES | | NULL | |
+-----------------+-------------+------+-----+---------+----------------+
根據輸入我試圖表以形成如圖所示的插入查詢
String reqstr = "[email protected]"
String valuess[] = reqstr.split("@");
if (valuess.length == 1) {
sql = "Insert into document (T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,vendor_brand_id,vendor_id) values ('"+valuess[0]+"',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,"+vendor_brand_id+","+vendor_id+") ";
}
else if (valuess.length == 2) {
sql = "Insert into document (T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,vendor_brand_id,vendor_id) values ('"+valuess[0]+"','"+valuess[1]+"',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,"+vendor_brand_id+","+vendor_id+") ";
}
// Upto length 10
我的問題是,我該如何形成這種動態?
你能否詳細說明。你需要動態地形成值部分嗎? – 2014-11-04 11:00:35
是的,我需要動態地形成查詢。 – Pawan 2014-11-04 11:02:15
Btw你不需要提供NULL,因爲它是屬性的默認值。 sql =「INSERT INTO DOCUMENT(T1,vendor_brand_id,vendor_id)values('」+ valuess [0] +「',」+ vendor_brand_id +「,」+ vendor_id +「)」就足夠了。對於else塊中的sql也是如此。 – Willmore 2014-11-04 11:18:20