none
insert into問題 RRS feed

  • 問題

  • 系統會出現「無法處理的例外狀況: System.Data.OleDb.OleDbException: INSERT INTO 陳述式的語法錯誤。」
    以下是我的insert into的程式:
    insertCmd = "Insert Into steppermask(wafersize,usable,customer,model,mask1,aligner mask,mask2,remark) Values('" & GetSqlStr(cobsize.Text) & "'," & Val(txtusable.Text) & ",'" & GetSqlStr(cobcustomer.Text) & "','" & GetSqlStr(txtmodel.Text) & "','" & GetSqlStr(txt6mask.Text) & "','" & GetSqlStr(txtaligner.Text) & "','" & GetSqlStr(txt5mask.Text) & "','" & GetSqlStr(txtremark.Text) & "')"
    麻煩請幫我看一下哪裡錯了?!我檢查了很多次,都沒錯呀?!
    p.s其中cobsize與cobcustomer<<----其為combobox下拉選項,與這個有關嗎?
    2006年9月6日 上午 08:18

解答

  • 1. 你有沒有用到保留字 ?

    2. 你把 insertCmd 在做完填入資料的完整指令輸出來看看,應該就看的出來了(例如 VALUES 和 "(" 不能黏在一起)...

    2006年9月6日 上午 09:25
    版主
  • HI forever329:

    您那裡可以在inserCmd這行設定中斷點,然後去抓insertCmd的值(也許您抓到值就可以看出錯誤的所在囉),在您的access中run這段程式碼,看看有沒有錯誤。至於您提到的combobox值,只要值沒有抓錯,這裡應該就沒有錯誤。

     

    2006年9月6日 上午 09:30
    版主

所有回覆

  • 1. 你有沒有用到保留字 ?

    2. 你把 insertCmd 在做完填入資料的完整指令輸出來看看,應該就看的出來了(例如 VALUES 和 "(" 不能黏在一起)...

    2006年9月6日 上午 09:25
    版主
  • HI forever329:

    您那裡可以在inserCmd這行設定中斷點,然後去抓insertCmd的值(也許您抓到值就可以看出錯誤的所在囉),在您的access中run這段程式碼,看看有沒有錯誤。至於您提到的combobox值,只要值沒有抓錯,這裡應該就沒有錯誤。

     

    2006年9月6日 上午 09:30
    版主
  • 十分感謝^^已經OK 了!但可以另外請教一個問題嗎?

    請問:如何在SELECT中把某一欄位名稱更改呢?如:原本欄位名稱為T1想在DATAGRID中的欄位名稱把它更改為B1,請問如何更改呢?

    2006年9月6日 上午 09:39
  • select T1 as B1 From Table 
    2006年9月6日 上午 09:56
    版主
  • 我用了您的方法,但會出現「無法處理的例外狀況: System.Data.OleDb.OleDbException: 查詢運算式 '6mask' 中的 語法錯誤 (少了運算元)。」這樣的錯誤,哪裡錯了嗎?以下是我SELECT的程式:

            selectcmd = "select wafersize,usable,customer,model,6mask as T1 from mask"

    2006年9月7日 上午 12:45
  •  

    6mask 改為 [6mask ] 試試看

    2006年9月7日 上午 01:15