private string shuju_lianjie(string name, string email, string password) { ////////////////////////////////////////////////////////////////////////////// ///获取用户名、邮件及设定密码,增加到数据库的用户表后返回该用户注册id值,不考虑 安全,仅仅表示代码的写作范例是否合乎要求 ///存储过程为: ///CREATE PROCEDURE `yuan_user_cc`(in xname varchar(100),in xemail varchar(100),in xpassword varchar(100),out xid integer) ///begin ///insert into yuan_user(name,email,password) values(xname,xemail,xpassword); ///select id into xid from yuan_user where name=xname; ///end ////////////////////////////////////////////////////////////////////////////// Int16 id;//返回的id值 MySqlConnection mysqlcon; MySqlDataAdapter mysqldata = new MySqlDataAdapter(); DataSet dataset = new DataSet(); mysqlcon = new MySqlConnection("server=localhost; user id=root; password=123; database=yuan_test; pooling=false;charset=gb2312"); mysqldata.SelectCommand = new MySqlCommand(); mysqldata.SelectCommand.Connection = mysqlcon; mysqldata.SelectCommand.CommandText = "yuan_user_cc"; mysqldata.SelectCommand.CommandType = CommandType.StoredProcedure; //设置参数,添加到数据库 MySqlParameter name_parameter = new MySqlParameter("?xname", MySqlDbType.VarChar,100);//mysql的存储过程参数是以?打头的!!!! name_parameter.Value = name; mysqldata.SelectCommand.Parameters.Add(name_parameter); //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ MySqlParameter email_parameter = new MySqlParameter("?xemail", MySqlDbType.VarChar, 100);//mysql的存储过程参数是以?打头的!!!! email_parameter.Value = email; mysqldata.SelectCommand.Parameters.Add(email_parameter); //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ MySqlParameter password_parameter = new MySqlParameter("?xpassword", MySqlDbType.VarChar, 100);//mysql的存储过程参数是以?打头的!!!! password_parameter.Value = password; mysqldata.SelectCommand.Parameters.Add(password_parameter); //++++++++++++++++++++++++++返回值++++++++++++++++++++++++++++++++++++++++++ MySqlParameter id_parameter = new MySqlParameter("?xid", MySqlDbType.Int16,15);//mysql的存储过程参数是以?打头的!!!! id_parameter.Direction=ParameterDirection.Output; mysqldata.SelectCommand.Parameters.Add(id_parameter); //+++++++++++++++++++++++++打开数据库,插入数据,返回id值+++++++++++++++++++ try { mysqldata.Fill(dataset, "yuan_user_cc"); id = (Int16)id_parameter.Value; return id.ToString(); } catch (MySqlException ex) { MessageBox.Show(ex.Message); return String.Empty; }
}