單到數據庫表中是否有插入數據庫表單記錄,而不使用結構,數據持有人的方式。插入不使用結構數據持有人
我想這樣
INSERT INTO table(filed1, field2) VALUES (value1, value2).
是這樣的可能在ABAP? THX
單到數據庫表中是否有插入數據庫表單記錄,而不使用結構,數據持有人的方式。插入不使用結構數據持有人
我想這樣
INSERT INTO table(filed1, field2) VALUES (value1, value2).
是這樣的可能在ABAP? THX
不行,因爲你不能用OpenSQL INSERT statements指定單個目標字段,這是不可能的。您可以通過使用VALUE type(...)
運算符來解決右側需要臨時結構的問題,但我還沒有嘗試過。
我試過了,不可能在INSERT語句中指定一個臨時結構。 – Christian
你應該嘗試動態創建一個結構。
使用CL_ABAP_STRUCTDESCR=>CREATE
,指定組件列表(列的列表)及其類型,動態獲取可用於創建數據引用的結構的描述。
快速僞代碼:
DATA coldescr TYPE REF TO cl_abap_structdescr.
DATA cols TYPE REF TO data.
FIELD-SYMBOLS <cols> TYPE any.
coldescr = cl_abap_structdescr=>create().
CREATE DATA cols TYPE HANDLE coldescr.
ASSIGN cols->* TO <cols>.
您可以使用<cols>
在您插入選擇語句。
我認爲這是可能的,檢查此[鏈接](http://stackoverflow.com/questions/15041871/how-to-import-sql-server-table-to-sap-abap-itab/15165487#15165487 ) –
@NelsonMiranda規則1:除非您需要,否則不要使用本機SQL。規則2:除非您正在編寫DB管理/ DDIC內容,否則您不需要本機SQL。 – vwegert
你爲什麼想這樣做? – Christian