【问题标题】:how to assign int value to SELECT database string?如何将 int 值分配给 SELECT 数据库字符串?
【发布时间】:2015-04-01 15:44:37
【问题描述】:

我使用 DataAdapter 来使用 SELECT common 来选择 Table 的行

OleDbDataAdapter objDataAdapter = new OleDbDataAdapter("SELECT * FROM Table WHERE dayNum = @dayNum", objConnection);  //here dayNum must be equal to 10; dayNum = 10

我想为@dayNum 分配一个整数值

例如

int intDay = 10;
objCommand.Parameters.AddWithValue(intDay.ToString(),"@dayNum");

但它不起作用

如何解决这个问题?

【问题讨论】:

  • objCommand.Parameters.AddWithValue("@dayNum",dayNum);
  • 你在哪里定义了objCommand 以及它与objDataAdapter 的关系,看起来你在DataAdapter 中使用命令文本而不是使用现有的命令对象,还交换参数名称和值添加参数。
  • 我需要在 WHERE 键码之后使用它,我想这是不可能的
  • @ali:- 我想 dayNum 是你的表格列的名称
  • @Habib objCommand 这并不重要,我只是有一个 asaign 整数值的示例,我只需要一种方法让 asaign int 选择字符串,这在 php 语言中非常简单,但我不知道我怎么能在 C# 中做到这一点

标签: c# sql database integer


【解决方案1】:

第一个参数是参数名称,第二个参数是值,所以:

objCommand.Parameters.AddWithValue("@dayNum", intDay); // use the correct type not string

【讨论】:

    【解决方案2】:

    删除.ToString()。试试这个:

    objCommand.Parameters.AddWithValue("@dayNum",intDay);
    

    【讨论】:

    • 函数“System.Data.OleDb.OleDbParameterCollection.AddWithValue”不能用给定的参数列表参数类型被调用:(int,const char [8])对象类型是:System.Data.OleDb .OleDbParameterCollection
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-08
    • 1970-01-01
    • 2016-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多