草庐IT

procedure

全部标签

PHP MYSQL PDO -> Fatal Error 23000 eventhough a special procedure is place

我的数据库中有一张表。我的表有几个字段,包括一个设置为主键的自动递增id字段,以及另一个我设置为唯一的名为“reference”的字段。为了填充该表,我有一个php脚本,它使用pdo在该表中插入记录。每次插入成功(意味着表中不存在“引用”),我都会增加一个名为$newOnes的变量。如果表中已存在值“reference”,则会触发代码为23000的异常。在这种情况下,我增加了另一个名为$doublons的变量。不幸的是,我的脚本触发了异常23000的fatalerror当while循环“处理”表的最后一条记录时。我不明白。预先感谢您的帮助。干杯。马克。我的php代码:try{$conn

mysql - 无法在 MySQL 语法错误中运行查询意外

我正在运行Workbench5.2.47。我编写了一个很长的程序,其中包含基本数据检查。如果数据库中不存在记录,则将插入该记录。过程保存没有问题,但是当我尝试运行它时MySQL5.5抛出错误。它很长,里面有很多公司敏感数据,或者我会在这里发布。我正在尝试通过执行一小段代码来调试该过程,但我似乎无法让Workbench允许我尝试任何操作。MySQL在5.1.5WorkingwithStoredProcedures中展示了如何创建存储过程.让我向您展示一些我正在尝试编写的非常基础的内容:DELIMITER$$DROPPROCEDUREIFEXISTSmy_test;CREATEPROCED

stored-procedures - 删除 MySQL 表中除 5 个最新条目外的所有条目

我目前有处理此逻辑的PHP代码,因为我不知道如何在SQL中处理它。我想创建一个存储过程,它将删除所有行,除了给定config_id的5个最新行。IEconfig_id=5被传递给SP,因此它知道要清理哪个config_id。CREATETABLE`TAA`.`RunHistory`(`id`int(11)NOTNULLauto_increment,`start_time`datetimedefaultNULL,`stop_time`datetimedefaultNULL,`success_lines`int(11)defaultNULL,`error_lines`int(11)defa

python - 错误 1318 : Incorrect number of arguments for PROCEDURE ComicHub. sp_createUser;预期 3,得到 4

我在运行这段代码时一直报错1318,我应该有4个参数:username、email、password和位置。它正在拾取4,但认为它只需要3个参数。数据库和Python的代码如下。python:@app.route('/userSignUp',methods=['POST'])defuserSignUp():try:#readvaluesfromsignupform_username=request.form['username']_email=request.form['email']_password=request.form['password']_location=request

mysql - 在MySQL中获取当前正在执行的存储过程名称?

我需要一个我在MySQL中编写的存储过程的日志。我知道这在MSSQLServer中可用@@procid。MySQL中的等价物是什么?我将使用时间戳、connection_id、database()。如何获取正在执行的sp的名称?给我打电话的sp呢?谢谢,亚当 最佳答案 您可以将过程名称作为IN参数传递给被调用的过程,并从这些过程中记录此信息。例如-DELIMITER$$CREATEPROCEDUREprocedure1(INproc_nameVARCHAR(255))BEGININSERTINTOproc_logVALUES('pr

mysql - Count() 无法正常工作 Mysql PROCEDURE

我创建了一个过程,它接受2个参数并检查计数。但是当我传递""空白值时,它仍然返回1个计数。不明白为什么它会这样工作。感谢帮助下面是我的程序DELIMITER$$CREATEDEFINER=`dadclient`@`123.63.249.169`PROCEDURE`checkInOut`(INgridvarchar(50),OUTcountINT)beginselectcount(GRIDID)intocountfromGRIDIDwhereGRIDID=grid;selectcount;END当我打电话checkInOut("",@aaa);select@aaa;当我调用它时,它返回错

mysql - 如何防止存储过程的用户传递 null?

我正在编写一个简单的MySQL存储过程:DELIMITER$DROPPROCEDUREIFEXISTSGetUserByCaseId$CREATEDEFINER='DEV_Organization'@'localhost'PROCEDUREGetUserByCaseId(INsearchedForIdVARCHAR(8))LANGUAGESQLNOTDETERMINISTICREADSSQLDATASQLSECURITYDEFINERBEGINSELECTCaseIdAuthenticator.sidASsid,CaseIdAuthenticator.caseIdAScaseId,Us

mysql - mysql的问题从 Doctrine 原始sql创建过程

我正在使用Symfony2中的一个应用程序项目。通过注册,每个客户端都会创建一个数据库。模式是在客户端登录时由验证服务创建的。该应用程序需要一些数据才能工作,到目前为止,我使用的是ORMfixtures。由于多种原因,我现在需要从fixturesload转移到更接近数据库。我创建了一个存储过程(mysql),它将取代所有数据加载。该过程有效,但我需要在每个数据库中与模式一起创建此过程。为此,我使用doctrinerawsql,但我无法通过createprocedure语句的第一行问题。这似乎与“分隔符$$”有关。在使用sql语句执行服务时,我得到:"message":"执行'delim

mysql - 执行查询结果语句

我有一组名为results_%的表,它们都具有相同的结构。我想为这个表添加一个索引。我可以将每个表的alter语句作为选择查询结果的一行,但我不知道如何执行此语句:selectconcat('altertable',test_db.table_name,'addindex`did`(`did`);')asstatementfrominformation_schema.tablestest_dbwheretest_db.table_namelike'results_%';我错过了什么?输出(我想执行而不是只显示给我):+----------------------------------

mysql - 如何从 MySql 中的存储过程返回表?

我在here的SQLServer中找到了我的答案,但我的问题是关于在mysql中。请帮助我 最佳答案 好吧,要在mysql中创建一个存储过程,你可以这样做......delimiter//;createprocedureFoo()BEGINSelect*fromvideos;END参见http://dev.mysql.com/doc/refman/5.0/en/create-procedure.html更多详情 关于mysql-如何从MySql中的存储过程返回表?,我们在StackOve