如何通过查询生成器向导创建的vb.net适配器将参数传递给mysql函数
我有一个疑问:如何通过查询生成器向导创建的vb.net适配器将参数传递给mysql函数,mysql,vb.net,mysql-function,Mysql,Vb.net,Mysql Function,我有一个疑问: SELECT * FROM table_1 WHERE (`update_column` = (DATE_SUB(curdate(), INTERVAL 10 DAY))) 它工作正常,我想将10天更改为参数,并通过适配器传递它的值,我正在使用查询生成器,在适配器中使用查询: 填表日期 我想变成这样: SELECT * FROM table_1 WHERE (`update_column` = (DATE_SUB(curdate(), INTERVAL @_days DAY
SELECT * FROM table_1 WHERE (`update_column` = (DATE_SUB(curdate(), INTERVAL 10 DAY)))
它工作正常,我想将10天更改为参数,并通过适配器传递它的值,我正在使用查询生成器,在适配器中使用查询:
填表日期
我想变成这样:
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改为@天时,mysql显示错误
函数参数列表中出错:“\u天”无法识别。
无法分析查询文本
不止一种方法, 首先使用参数在mysql数据库中创建过程 我们称之为“几天后再回来” 您的查询是正确的,所以请将其放入过程中
CREATE PROCEDURE return_after_some_day (in param1 INT)
BEGIN
SELECT * FROM `table` where `update_column` = (DATE_SUB(curdate(), INTERVAL param1 day ));
CREATE PROCEDURE return_after_some_day (in param1 INT)
BEGIN
SELECT * FROM `table` where `update_column` = (DATE_SUB(curdate(), INTERVAL param1 day ));
end代码>
数字5将传递给proceuder从
INTERVAL
关键字中删除反勾号。同样的错误仍然出现,参数问题与INTERVAL无关,因为当设置(INTERVAL 10天)正常工作时,函数参数列表中的错误:“dd”无法识别。无法分析查询文本。其中dd是传递给查询的@dd,而不是10天