2011-06-28 28 views
1

上午有一些SQL(SQLCE)的問題,我發現了以下錯誤:國外,私鑰MSSQL 1:1和1:許多問題

有解析查詢時出現錯誤。

(1) ERROR:> [Token Line number = 1, Token Line offset 853, Token in error = @clID] 

從下列SQL行:

mySQLCommand1.CommandText = "INSERT into clientSubjectiveComplaints (clientSubComplaintCreated,clientSubComplaintModified,clientSubComplaintAge,clientSubComplaintWeight,clientSubComplaintHeight,clientSubComplaintConfirmation,clientSubComplaintEnviorment,clientSubComplaintFood,clientSubComplaintPresentComplaint,clientSubComplaintHistoryofPresentComplaint,clientSubComplaintPastMedicalHistory,clientSubComplaintMedication,clientSubComplaintLastDentalCheckUp,clientID) VALUES (@ClientSubComplaintCreated, @ClientSubComplaintModified, @ClientSubComplaintAge, @ClientSubComplaintWeight, @ClientSubComplaintHeight, @ClientSubComplaintConfirmation, @ClientSubComplaintEnviorment, @ClientSubComplaintFood,@ClientSubComplaintPresentComplaint, @ClientSubComplaintHistoryofPresentComplaint, @ClientSubComplaintPastMedicalHistory, @ClientSubComplaintMedication, @ClientSubComplaintLastDentalCheckUp, @clID"; 

這時候我試圖插入表clientSubjectiveComplaint了。

enter image description here 注意:上面的db驗證ok。

假設在網上閱讀了一下,可能是一個私鑰外鍵問題,但我不完全確定。

我改變了一些表格爲1:1的關係(見下圖),因爲它更有意義,但後來宣稱如果你有1:1的關係,那麼它期望主鍵是相同的表格。 See Here

所以這個問題

什麼是由原始的錯誤(1)的意思,爲什麼我得到令牌的錯誤?

其次:

假設在See Here的PK關鍵問題是正確的,那麼什麼是使1的正確步驟:1間的關係。

謝謝。

enter image description here

回答

2

你缺少從查詢中mySQLCommand1.CommandText

換句話說右括號,它應該是:

mySQLCommand1.CommandText = "INSERT into clientSubjectiveComplaints (clientSubComplaintCreated,clientSubComplaintModified,clientSubComplaintAge,clientSubComplaintWeight,clientSubComplaintHeight,clientSubComplaintConfirmation,clientSubComplaintEnviorment,clientSubComplaintFood,clientSubComplaintPresentComplaint,clientSubComplaintHistoryofPresentComplaint,clientSubComplaintPastMedicalHistory,clientSubComplaintMedication,clientSubComplaintLastDentalCheckUp,clientID) VALUES (@ClientSubComplaintCreated, @ClientSubComplaintModified, @ClientSubComplaintAge, @ClientSubComplaintWeight, @ClientSubComplaintHeight, @ClientSubComplaintConfirmation, @ClientSubComplaintEnviorment, @ClientSubComplaintFood,@ClientSubComplaintPresentComplaint, @ClientSubComplaintHistoryofPresentComplaint, @ClientSubComplaintPastMedicalHistory, @ClientSubComplaintMedication, @ClientSubComplaintLastDentalCheckUp, @clID)"; 

含義應該這樣結束:, @clID)";

+0

好吧,我現在就恨自己!感謝Dommer。 – DevilCode

+0

如果你知道我做了多少次類似的事,你會笑!解決這類問題的最好方法是向某人解釋(無論是親自或在線)。有時,解釋行爲可以幫助你看到問題,其他時候你解釋的人可以看到它。總的來說,它節省了很多時間。靈魂承認一個並不總是完美也是件好事!我認爲這是一個好習慣,所以我提出了這個問題! –

+0

我可以刪除我的SHAME的問題嗎?大聲笑 – DevilCode