【错误】”将参数值从 String 转换到 Decimal 失败“ && “仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时”
来源:互联网 发布:人人商城分销6.0源码 编辑:程序博客网 时间:2024/05/22 10:28
今天在写一个SqlDataAdapter向数据库更新数据的Demo时,出现了这个错误,其实很好理解,还是一个细心的问题:
在往数据库里存储数据时,要注意字段的类型!!
而我的错误就是 一个字段是int 型,存储给的数据却是string类型,所以会报这样的错。。。(细心哟)
将参数值从 String 转换到 Decimal 失败。
//向插入命令添加参数 insertCmd.Parameters.Add("@id", SqlDbType.Int,4,"id"); insertCmd.Parameters.Add("@name", SqlDbType.NVarChar, 50, "name"); insertCmd.Parameters.Add("@subject", SqlDbType.NVarChar, 100, "subject"); insertCmd.Parameters.Add("@phone", SqlDbType.Money, 12, "phone"); insertCmd.Parameters.Add("@qq", SqlDbType.NVarChar, 50, "qq"); insertCmd.Parameters.Add("@mail", SqlDbType.NVarChar, 50, "mail"); //设置数据适配器的SelectCommand属性/InsertCommand da.SelectCommand = selectCmd; da.InsertCommand = insertCmd; //创建数据集对象 DataSet data = new DataSet(); //使用数据适配器填充数据适配器 da.Fill(data, "message"); //向DataSet的“Books”表中添加一条记录 DataRow drNew = data.Tables["message"].NewRow(); //设置新添加行的值 drNew[0] = id; //这里字符串要转为int整型!!!!★★★★★ drNew[1] = phone; drNew[2] = subject; drNew[3] = phone; drNew[4] = qq; drNew[5] = mail;
改成这个即可:
drNew[0] = int.Parse(id);
但是,看我上面的代码,第二个地方需要注意,这个id不能是主键,理由不必多说,主键我在数据库设置了会自增的,不可人工添加!否则会报以下错误
仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表'message'中的标识列指定显式值。
0 0
- 【错误】”将参数值从 String 转换到 Decimal 失败“ && “仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时”
- 仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时
- 仅当使用了列的列表,并且 IDENTITY_INSERT 为 ON 时
- 仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表't_ArticleFiles'中的标识列指定显式值。
- 仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表'stulnfo'中的标识列指定显式值。
- 关于sql Server数据库中错误“仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表't_MenuButtonMap'中的标识列指定显式值。”
- (转贴)仅当使用了列的列表,并且 IDENTITY_INSERT 为 ON 时,才能在表 'TableName' 中为标识列指定显式值。
- 复制表,仅当使用了列的列表,并且 IDENTITY_INSERT 为 ON 时,才能在表 'TableName' 中为标识列指定显式值。
- 仅当使用了列的列表,并且IDENTITY_INSERT为ON时,才能在表中为标识列指定显式值
- 仅当使用了列的列表 并且 identity_insert 为 on 时 才能在表 中为标识列指定显式值。
- 仅当使用了列的列表,并且 IDENTITY_INSERT 为 ON 时,才能在表 'Admin' 中为标识列指定显式值。
- 复制表,仅当使用了列的列表,并且 IDENTITY_INSERT 为 ON 时,才能在表 'TableName' 中为标识列指定显式值。 .
- SQLServer,仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表xx中的标识列指定显式值
- 仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表'中的标识列指定显式值--问题sqlserver
- sql server的“仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表 '表名' 中的标识列指定显式值。”解决方法
- 仅当使用了列的列表,并且IDENTITY_INSERT为ON时,才能在表'goldlog'中为标识列指定显式值
- 消息 8101,级别 16,状态 1,第 1 行 仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表'MyShop'中的标识列指定显式值。
- EF:插入记录失败,提示当 IDENTITY_INSERT 设置为 OFF 时,不能向表中的标识列插入显式值
- 苹果iOS系统下检查第三方APP是否安装
- 关于Spring系统无法找到指定的文件
- 谈谈iOS Animation
- pandas 新手指引
- input keyup 500ms 延时输入 事件处理
- 【错误】”将参数值从 String 转换到 Decimal 失败“ && “仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时”
- Git 常用命令大全
- Windows Server 2003远程桌面多用户连接问题
- 添物不花钱学javaEE--CSS
- IOS Dev Intro - Memory Management
- Butter Knife 使用方法
- LeetCode 147. Insertion Sort List插入排序链表的高效简单解法
- 应用多机房部署
- CentOS7安装Memcached 三步曲