C# Access 标准表达式中数据类型不匹配

代码有些长,我就不粘贴了,我大概归纳了一下问题,基本上是这样:假如,一个数据库,同时,有两条语句1update[inventory]set[数量]=[数量]+'"+Con... 代码有些长,我就不粘贴了,我大概归纳了一下问题,基本上是这样:
假如,一个数据库,
同时,有两条语句
1
update [inventory] set [数量] = [数量] + '" + Convert.ToDouble(information[4].ToString()) + "' WHERE [名称] = '" + information[0].ToString() + "' AND [规格] = '" + information[1].ToString() + "' AND [单位] = '" + information[2].ToString() + "' AND [单价] = '" + Convert.ToDouble(information[3].ToString()) + "'
2
insert into [inventory] (名称,规格,单位,单价,数量) values ('" + information[0].ToString() + "','" + information[1].ToString() + "','" + information[2].ToString() + "','" + Convert.ToDouble(information[3].ToString()) + "','" + Convert.ToDouble(information[4].ToString()) + "')
--------------------------------------------------------------------
1的作用是,当数据库中有1个m的时候,如果我又存入2个m,则数据库更新m的数量为1+2=3。
2的作用是,数据库中还是1个m,但这时如果我存入1个n,则数据库中追加1个n。
当我存数据时,程序先调用1,看看是否符合1的情况,符合就可以运行完毕了,不符合,则运行2.

但是现在是这样,如果一个空数据库,我开始存入数据:1个m,按规则,运行1了,但是数据库中没有他,则运行了2,将那1个m存进数据库了。然后我又存数据,此时,不管我存什么,当程序运行到1时,就报错,提示:标准表达式中数据类型不匹配。但是当运行存1个m的时候,明明没有报错,正常运行啊。

就是说,如果是空数据库,我的语句都能运行,但是,如果有数据了,运行1,就会提示“标准表达式中数据类型不匹配”

数据类型:
名称:文本
规格:文本
单位:文本
单价:货币
数量:数字(double)

求解!!
展开
 我来答
youbl
推荐于2018-03-29 · TA获得超过2510个赞
知道大有可为答主
回答量:1844
采纳率:62%
帮助的人:1670万
展开全部
你的问题,就是sql里把 数量 去加 字符串,当然出错了

set [数量] = [数量] + '" + Convert.ToDouble(information[4].ToString()) + "'
把+后面的单引号去掉就ok了,变成:
set [数量] = [数量] + " + Convert.ToDouble(information[4].ToString()) + "
光点科技
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件... 点击进入详情页
本回答由光点科技提供
天涯の翼eefb
2013-04-29 · 超过57用户采纳过TA的回答
知道小有建树答主
回答量:108
采纳率:100%
帮助的人:49.1万
展开全部
update [inventory] set [数量] = [数量] + " + Convert.ToDouble(information[4].ToString()) + "WHERE [名称] = '" + information[0].ToString() + "' AND [规格] = '" + information[1].ToString() + "' AND [单位] = '" + information[2].ToString() + "' AND [单价] = "+ Convert.ToDouble(information[3].ToString()) + ";"
insert into [inventory] (名称,规格,单位,单价,数量) values ('" + information[0].ToString() + "','" + information[1].ToString() + "','" + information[2].ToString() + "'," + Convert.ToDouble(information[3].ToString()) + ","+ Convert.ToDouble(information[4].ToString())+");"
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式