寫入資料庫問題 |
答題得分者是:chih
|
challenge
一般會員 發表:14 回覆:41 積分:11 註冊:2002-10-08 發送簡訊給我 |
請問一下…
我是利用delphi連結mysql資料庫…
在mysql那已有下好的語法…亦可以執行…
可要把sql語法寫進delphi時…
若單純的select的話…沒問題…
可是一旦要將select出來的東西要insert進去資料表就發生如下錯誤訊息:
Project count_pro.exe raised exception class ENoResultSet with message 'Error creating cursor handle'. Process stopped. Use Ste or Run to continue.
怎麼try都不曉得問題在那?
麻煩大家指教一下…謝謝^^
|
chih
版主 發表:48 回覆:1186 積分:639 註冊:2002-04-02 發送簡訊給我 |
|
challenge
一般會員 發表:14 回覆:41 積分:11 註冊:2002-10-08 發送簡訊給我 |
●這是mysql那的語法:
insert QUES_TEA_STA values (TEA_ID, QUES_ID, QS_NO, RESULT, QS_SUM1,
QS_SUM2, QS_SUM3, QS_SUM4, QS_SUM5, DEP_ID)
select tea.TEA_ID, tea.QUES_ID, tea.QS_NO ,
/* 算出每一題的統計結果*/
sum(tea.RESULT) / count(QS_NO) as 'RESULT'
/* 算出每一題的每一選項之統計結果 */
,sum(tea.QS_SUM1) as 'QS_SUM1', sum(tea.QS_SUM2) as 'QS_SUM2',
sum(tea.QS_SUM3) as 'QS_SUM3', sum(tea.QS_SUM4) as 'QS_SUM4',
sum(tea.QS_SUM5) as 'QS_SUM5'
/* 開課單位 */
, course.DEP_ID from QUES_CRS_STA tea, COURSE_DETAIL course
/* 1.主找出課程的開課單位且開課單位判斷是否為主要開課單位
* 2.找出問卷之權重
*/
where tea.CRS_ID = course.CRS_ID and course.MDEP = '1'
/* 不同的開課單位有教師整體評鑑,所以也要將 course.DEP_ID 加入group by中*/
group by course.DEP_ID, tea.TEA_ID, tea.QUES_ID, tea.QS_NO ●這是在delphi的程式:
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
case choose.ItemIndex of
0: with query1 do
begin
DatabaseName:='mysql';
close;
sql.Clear;
//以下這兩句若不註解的話…就會發生寫入錯誤,可在mysql那可執行
//query1.sql.add('insert QUES_TEA_STA(TEA_ID, QUES_ID, QS_NO, RESULT, QS_SUM1,');
//query1.sql.add('QS_SUM2, QS_SUM3, QS_SUM4, QS_SUM5, DEP_ID)');
query1.sql.add('select tea.TEA_ID, tea.QUES_ID, tea.QS_NO ,');
query1.sql.add('sum(tea.RESULT) / count(QS_NO) as ''RESULT''');
query1.sql.add(',sum(tea.QS_SUM1) as ''QS_SUM1'', sum(tea.QS_SUM2) as ''QS_SUM2'',');
query1.sql.add('sum(tea.QS_SUM3) as ''QS_SUM3'', sum(tea.QS_SUM4) as ''QS_SUM4'',');
query1.sql.add('sum(tea.QS_SUM5) as ''QS_SUM5''');
query1.sql.add(', course.DEP_ID'); query1.sql.add('from QUES_CRS_STA tea, COURSE_DETAIL course');
query1.sql.add('where tea.CRS_ID = course.CRS_ID and course.MDEP
= ''1''');
query1.sql.add('group by course.DEP_ID, tea.TEA_ID, tea.QUES_ID,
tea.QS_NO');
prepare;
query1.open;
end;
|
chih
版主 發表:48 回覆:1186 積分:639 註冊:2002-04-02 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |