Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
检查值是否存在,如果存在,则更新如果不存在,则插入ms access vb.net_Vb.net_Ms Access 2007 - Fatal编程技术网

检查值是否存在,如果存在,则更新如果不存在,则插入ms access vb.net

检查值是否存在,如果存在,则更新如果不存在,则插入ms access vb.net,vb.net,ms-access-2007,Vb.net,Ms Access 2007,大家好 在我的数据库表中有两个字段(mDate,mSales) 如果日期已经存在,则更新销售价值;如果不存在,则插入新的销售价值。我正在使用MS Access 2007和vb.net 2012 当我执行以下IIF功能时,它会显示一条错误消息 IF EXISTS (SELECT mDate FROM MasterDB WHERE mDate='@dateValue') UPDATE MasterDB SET mSales = mSales + @salesValue WHERE mDate ='@

大家好

在我的数据库表中有两个字段(
mDate
mSales

如果日期已经存在,则更新销售价值;如果不存在,则插入新的销售价值。我正在使用MS Access 2007和vb.net 2012

当我执行以下
IIF
功能时,它会显示一条错误消息

IF EXISTS (SELECT mDate FROM MasterDB WHERE mDate='@dateValue') UPDATE MasterDB SET mSales = mSales + @salesValue WHERE mDate ='@dateValue' ELSE INSERT INTO MasterDB (mDate, mSales) VALUES ('@dateValue', @salesValue)
错误消息:

SQL语句无效;应为“删除”、“插入”、“过程”、“选择”或“更新”


如果我的
IIF
功能中有任何替代方法或更正,请帮助我。

您不能在Access中执行此操作。您必须在VB.NET中使用逻辑来检测datarecord是否存在,并根据其执行INSERT或UPDATE命令。看见还可以查找术语Upsert。Access都不像SQL Server那样支持
Merge
命令。谢谢您的建议。经过艰苦的尝试,我找到了另一条路。而且,我不知道为什么用VS内置sql创建的mdf文件(localDB)不支持SAP CrystalReport。或者,如果有任何方法连接SAP CR,请让我知道。非常感谢。你应该用一个新问题问这个问题,我明白。谢谢,这能回答你的问题吗?