我的使用中出错stored procedure(mysql 5.6).我正在使用Workbench 6.3 CE.我的代码如下
DELIMITER // (this line shows error)why??
CREATE PROCEDURE Demo(in v_id int)
BEGIN
select name from student where id=v_id;
END//
delimiter;
Run Code Online (Sandbox Code Playgroud) 我想创建一个存储过程,将Archive表中的一些记录插入主表.
我的问题是客户端在他的网格中有多个复选框,他/她可以检查任意数量的复选框.每个复选框代表Archive表中的记录.每条记录都由orderNo.基于orderNo我想创建一个存储过程,从Archive表中获取记录并将其插入主表.
我的问题:如何有效地处理此存储过程中的未知数量的参数?在伪代码中:
create procedure moveRecords(what parameters i should take here)
as
begin
insert into mainTable(orderNo,date,siteID) select orderNo,date,siteID from
ArchiveTable where orderNo=<here what i write>
Run Code Online (Sandbox Code Playgroud)
客户端可以发送1个参数,2个,3个,10个,20个参数等我们不知道.类似于以下内容:
exec moveRecords(any no. of parameters)
Run Code Online (Sandbox Code Playgroud)
我提出了如下解决方案:
orderNo(由客户端发送)放入一个temp_Table并从temp_Table我的存储过程中检索这些. orderNo在数组的基础上采用数组和调用过程.我正在寻找替代品.
String str1="hello";
String str2="hell";
String str3=str2+"o";
System.out.println(str1==str3); // fasle
System.out.println(str1.hashCode()); // 99162322
System.out.println(str2.hashCode()); // 3198781
System.out.println(str3.hashCode()); // 99162322
Run Code Online (Sandbox Code Playgroud)
我的问题是,为什么STR1 == STR3返回假,如果有哈希码是相同的?我想知道==运算符和哈希码的internaly工作