我在我的數據庫有此表(記錄ID是1名學生一樣,它增加1自動爲不同的學生):使用C#我想保存從數據庫中多條記錄在一個字符串
id | firstName | lastName | subject | grade | recordID |
----+-----------+----------+---------+-------+----------+
1 | John | Doe | 1 | A | 1 |
1 | John | Doe | 2 | B | 1 |
3 | Max | Smith | 1 | C | 2 |
爲ID = 1的數據保存到一個字符串格式爲:
Name: John Doe
Details: 1A; 2B
Name: Max Smith
Details: 1C
我做了什麼至今:
SqlCommand cmd = _connection.CreateCommand();
string res = null;
cmd.CommandText = "SELECT COUNT(DISTINCT recordID) FROM table1";
int numb = Convert.ToInt32(cmd.ExecuteScalar().ToString());
int currentRecord = 1;
for (int i = 0; i < numb; i++)
{
cmd.CommandText = "SELECT firstname, lastname FROM table1 WHERE recordID="+currentRecord+";";
res += "Name: " + cmd.ExecuteScalar().ToString() + "\n Details: ";
cmd.CommandText = "SELECT subject, grade FROM table1 WHERE recordID="+currentRecord+";";
res += "Details: " + cmd.ExecuteScalar().ToString() + "\n";
currentRecord++
}
這總是將第一條記錄保存在字符串中,像這樣
Name: John
Details: 1
Name: Max
Details: 1
儘管我需要保存多行和多列。請幫忙!
兩個往返於數據庫中讀取相同的記錄?效率不高 – Steve 2013-05-09 14:48:23