我正在使用MS Access数据库,并具有以下查询:
DoCmd.RunSQL "INSERT INTO My_Table_Temp (Value1, Value2, IsDirty, HWND)" _
& " SELECT Value1, Value2, 0 as IsDirty, " & sqe(Me.HWND) & " as HWND" _
& " FROM My_Table; "
这个想法是,我将数据库中的值加载到临时表中,然后可以将该表绑定到控件,以便在将值写回到数据库之前,可以从中添加和删除值。
我的问题是HWND从未设置,因此当我对其进行过滤以保存记录时,什么也不会拾取。将显示数据库中已经存在的值,只是从未设置过的HWND。我错过了完全显而易见的东西吗?
答案 0 :(得分:1)
我创建了一个msaccess MDB,然后创建了一个“ hr_training_levels_temp”表。 我没有“ FROM”表, 所以我将一些值(和后缀为'2'的更改值)进行了硬编码,就像在此sql中一样
INSERT INTO hr_training_levels_temp
(traininglevel,
trainingleveldesc,
traininglevelid,
trainingid,
isdirty,
hwnd)
SELECT 'lvla',
'lvla-desc',
'lvla-id',
'tr-id',
0 AS IsDirty,
'920902' AS HWND
在msaccess中,当我双击表格时,我得到了这个结果-
traininglevel trainingleveldesc traininglevelid trainingid isdirty HWND
lvla lvla-desc lvla-id tr-id 0 920902
lvla2 lvla2-desc lvla2-id tr-id2 0 920903
您在msaccess表本身中看到这样的结果吗?
然后,当显示屏幕返回并使用HWND进行选择时,是否与用于插入的HWND相同?