2008-11-19 50 views
2

我一直在試圖寫入最終獲取C.嵌入式SQL使用C

編譯我找不到對C中的嵌入式SQL語法參考指南或手冊DB2嵌入式SQL語句。我想要做的一件事是將數據插入到表中。我知道大多數嵌入式SQL語句需要initalizer EXEC SQL,但這通常是我的知識程度。我正在做這項工作,如果有更多關於這個或解決方案的信息,我會很感激。語句的

實施例來查詢數據庫:

EXEC SQL SELECT SNAME,AGE成:SNAME,:鼠尾草 FROM ONE.SAILOR 其中SID =:SID;

我喜歡看什麼語句允許我插入到數據庫中。我嘗試了類似以下的內容,但它不起作用。

EXEC SQL INSERT .... 
+0

其實,我終於想通了我是否缺少INTO,因此它應該是EXEC SQL INSERT INTO ... 哎呦。 – user38781 2008-11-19 01:35:45

回答

2

請參閱IBM的Embedded SQL手冊。

無論宿主語言是什麼,嵌入式SQL在很大程度上都是相同的。

1

我剛開始使用sqllite。除了用於C++的好的documentation之外,SQLlist可能是一件好事,因爲您可以在不依賴於DB2的情況下對代碼進行單元測試,並且可以輕鬆地添加代碼。

2

四點不是語法有效:-D

可靠的方式是一樣的與任何其他INSERT語句:列出列的值。

EXEC SQL INSERT INTO SomeTable(Col1, Col2, Col3) VALUES(:hv1, :hv2, :hv3); 

這裏,:hv1,:hv2和:hv3代表適合於表中各列的三種主機變量。請注意,只要這些列有缺省指定或接受NULL(在這種情況下實際上只是默認缺省值),表中可能包含除這三列以外的其他列。不可靠的方式不會列出列:

EXEC SQL INSERT INTO SomeTable VALUES(:hv1, :hv2, :hv3); 

現在你是依賴於獲得序列正確的,你必須爲每個列的值 - 也不能在SomeTable額外列。