草庐IT

过程中

全部标签

mysql - Mysql存储过程中的整数数组

如何在Mysql存储过程中使用整数值数组? 最佳答案 这有助于我做IN条件希望这会帮助你..CREATEPROCEDURE`test`(INArray_StringVARCHAR(100))BEGINSELECT*FROMTable_NameWHEREFIND_IN_SET(field_name_to_search,Array_String);END//;调用:calltest('3,2,1'); 关于mysql-Mysql存储过程中的整数数组,我们在StackOverflow上找到一个

mysql - 如何使用 MySql 从存储过程返回结果集?

我正在使用MySql编写一个存储过程,它使用select语句返回多行。我的代码如下dropprocedureifexistsGetAccounts;DELIMITER//CREATEPROCEDUREGetAccounts()BEGINDECLARErowcountint;SET@resultset=(SELECT*fromrequestswhereSTATUS="FAILURE";END//DELIMITER关于如何在storedProcedure中返回结果集的任何示例?谢谢有情有义 最佳答案 DROPPROCEDUREIFEXI

mysql - 如何在mysql存储过程中循环日期时间

我使用的是mysql存储过程,我如何创建一个循环,使变量strathour每1小时间隔1小时,然后返回查询的总输出。当starthour小于11月的日期时,它将以1小时的间隔执行查询。这是我的代码:DELIMITER$$CREATEDEFINER=`root`@`%`PROCEDURE`sp_asessiontime`(out`total`int)BEGINdeclare`starthour`,`endhour`datetime;set`starthour`='2012-09-2001:59:00';set`endhour`='2012-09-2002:00:00';selectcou

Mysql存储过程OUT变量返回NULL

我在我的应用程序中使用以下示例存储过程:DELIMITER$$DROPPROCEDUREIFEXISTS`test`.`sp_item`$$CREATEDEFINER=`root`@`localhost`PROCEDURE`sp_item`(INnameVARCHAR(255),OUTitem_idINT(11))BEGINDECLAREitem_idINTDEFAULT0;STARTTRANSACTION;INSERTINTO`item`(`name`)VALUES(name);SET@item_id:=LAST_INSERT_ID();COMMIT;END$$DELIMITER;当

MySQL:有效地填充存储过程中的表

我正在测试MySQL服务器的性能,并用超过2亿条记录填充一个表。存储过程生成大SQL字符串的速度非常慢。非常欢迎任何帮助或评论。系统信息:数据库:MySQL5.6.10InnoDB数据库(测试)。处理器:AMDPhenomII1090TX6核心,每个核心3910Mhz。RAM:16GBDDR31600MhzCL8。HD:Windows764bitsSP1inSSD,mySQL安装在SSD,日志写入机械硬盘。存储过程创建一个INSERTsql查询,其中包含要插入到表中的所有值。DELIMITER$$USE`test`$$DROPPROCEDUREIFEXISTS`inputRowsNoR

mysql - 使用 MySQL 将 LIKE 与存储过程参数连接起来

目标将参数与%连接起来使用MySQL的LIKE运算符。问题我的数据库中有以下查询,它很好地返回了结果:SELECTpeople.LOGIN,people.EMAILFROMpeopleWHEREpeople.LOGINLIKE'o%'ORDERBYpeople.LOGINASCLIMIT10;但我想使用存储过程调用此函数,而不是使用'o%',我想用'%'我无法做到这一点。场景我在我的程序中尝试了以下方法:BEGINSELECTpeople.EMAILFROMpeopleWHEREpeople.LOGINLIKECONCAT(expression,'%')ORDERBYpeople.LO

php - 如何从laravel中的mysql存储过程中获取多个结果集

我想从laravel中的存储过程中获取多个结果集。有什么办法可以做到这一点?目前,我可以使用以下代码获取单行数据:$result=DB::statement('CALLuser_login('.$userId.',"'.$password.'",'.'@success'.','.'@first_Name');$res=DB::select('select@successASsuccess,@first_NameASfirstName);Hereismystoredprocedure:DELIMITER//DROPPROCEDUREIFEXISTSuser_login//createpr

MySQL 存储过程准备语句(动态 SQL)参数化

我正在尝试编写一个MySQL搜索函数,该函数构建一个动态sql值并通过准备好的语句执行它。显然,为了安全起见,我想通过一个参数传递用户输入(搜索词),但我不知道如何将一个参数与多个参数匹配?查询中的标记。可能最好说明我的意思:CREATEDEFINER=`admin`@`localhost`PROCEDURE`WEBSITE_mainSearch`(INsearchWordInVARCHAR(128))BEGINDECLAREarticlesModuleBIT;SET@query='';SET@searchWordIn=searchWordIn;SELECTarticlesModule

php - 在交易过程中重新加载页面

如果用户在交易过程中停止页面完全加载然后刷新页面,交易是否会应用两次? 最佳答案 简短的回答是-你必须检查。即使一个查询没有正确执行,交易也会失败。然而,真正的问题是——如果用户中止加载,这并不意味着服务器将停止执行代码。中止页面加载仅意味着用户决定不接收返回的数据。您的Web服务器不必遵守,PHP也不必遵守-他们甚至可能不知道用户关闭了管道这一事实。现在我们进入了一个完全不同的游戏领域——PHP可以嵌入到服务器中,也可以充当独立服务器(称为php-fpm)。如果PHP通过mod_php嵌入到服务器(例如Apache)中-Apach

mysql - 如何使用存储过程返回多行

我是存储过程的新手。我写了一个查询来获取多行。但我收到类似的错误ErrorCode:1172.Resultconsistedofmorethanonerow.我应该使用CURSOR类型吗?这是我的查询和表结构。我的表结构是:+---+------+------+---------+|id|name|class|section|+---+------+------+---------+|1|abc|5|A||2|cdef|5|B||3|hikl|5|A||4|xyz|5|A|+---+------+------+---------+我的存储过程查询是CREATEDEFINER=`root