如何通过由查询生成器向导创建的 vb.net 适配器将参数传递给 mysql 的函数
how to pass parameter to function of mysql through vb.net adapter which is created by query builder wizard
我有这个查询:
SELECT * FROM table_1 WHERE (`update_column` = (DATE_SUB(curdate(), INTERVAL 10 DAY)))
它正常工作,我想将 10 day 更改为参数并通过适配器传递它的值,我正在使用查询生成器,在适配器中查询:
FillBy_sub_date
我想成为什么样的人:
SELECT * FROM table_1 WHERE (`update_column` = (DATE_SUB(curdate(), INTERVAL @_days DAY)))
我想通过以下方法传递日期值:
Me.table_1Adapter.FillBy_sub_date(Me.dataset.table_1, 5)
5 是我不会传递给查询的天数
问题:当我将数字 10 更改为 @_days 时 mysql 错误显示
Error in list of function arguments: '_days' not recognized.
Unable to parse query text.
方法不止一种,
首先在 mysql 数据库中使用参数创建过程
让我们称之为 "return_after_some_days"
你的查询是正确的,所以把它放在过程中
创建过程
CREATE PROCEDURE return_after_some_day (in param1 INT)
BEGIN
SELECT * FROM `table` where `update_column` = (DATE_SUB(curdate(), INTERVAL param1 day ));
end;
然后转到构建器向导并将查询添加到 table 适配器
- select 使用现有的存储过程
- 来自列表 select 您的程序名称是 (return_after_some_days)
- select表格日期和设置填充方法的名称
- 进入您的代码并从数据适配器调用您的方法名称,例如
Me.table_1Adapter.name_of_method_that_call_procedure(Me.dataset.table_1,
5)
数字 5 将传递给 proceuder
我有这个查询:
SELECT * FROM table_1 WHERE (`update_column` = (DATE_SUB(curdate(), INTERVAL 10 DAY)))
它正常工作,我想将 10 day 更改为参数并通过适配器传递它的值,我正在使用查询生成器,在适配器中查询:
FillBy_sub_date
我想成为什么样的人:
SELECT * FROM table_1 WHERE (`update_column` = (DATE_SUB(curdate(), INTERVAL @_days DAY)))
我想通过以下方法传递日期值:
Me.table_1Adapter.FillBy_sub_date(Me.dataset.table_1, 5)
5 是我不会传递给查询的天数
问题:当我将数字 10 更改为 @_days 时 mysql 错误显示
Error in list of function arguments: '_days' not recognized. Unable to parse query text.
方法不止一种, 首先在 mysql 数据库中使用参数创建过程 让我们称之为 "return_after_some_days" 你的查询是正确的,所以把它放在过程中
创建过程
CREATE PROCEDURE return_after_some_day (in param1 INT) BEGIN SELECT * FROM `table` where `update_column` = (DATE_SUB(curdate(), INTERVAL param1 day ));
end;
然后转到构建器向导并将查询添加到 table 适配器
- select 使用现有的存储过程
- 来自列表 select 您的程序名称是 (return_after_some_days)
- select表格日期和设置填充方法的名称
- 进入您的代码并从数据适配器调用您的方法名称,例如
Me.table_1Adapter.name_of_method_that_call_procedure(Me.dataset.table_1, 5)
数字 5 将传递给 proceuder