CREATE PROCEDURE NEWDATABASE
(
@dbname varchar(200), --数据库的名称
@rdbname varchar(200)
)
AS
exec('Create DataBase '+@dbname)
exec('use '+@rdbname+';select * into '+@dbname+'..R_Category from(select top 100 percent * from R_Category)a')
go
其中@dbname为新建数据库名字。 @rdbname为数据库源名
存储过程的操作是通过用户输入参数 创建新数据库,然后复制 数据库源下的R_Category 表结构和所有内容。然后我建个winform应用程序,不知道如何调用这个存储过程以及传参
这是我 创建的一个类:
public void procName11(string dbname,string rdbname)
{
SqlParameter[] param = new SqlParameter[2]; param[0]=new SqlParameter("@dbname", SqlDbType.NVarChar,200);
param[0].Value = dbname;param[1]=new SqlParameter("@rdbname", SqlDbType.NVarChar,200);
param[1].Value = rdbname;
}
然后我就不知道怎么写了。。请教高手帮忙解答。!!!急
这个是他窗体连接数据库代码:
SqlConnection con = new SqlConnectio("server=.;uid="+this.txtid.Text+";pwd="+this.txtpwd.Text+";database="+this.txtrs.Text+";");连接数据库的用户名和密码全是未知的,只有用户在安装的时候输入新数据库名,数据库源 用户名和密码,才能创建新数据库请教高手~~~~~~~~~~~急~~~~~~~谢谢
(
@dbname varchar(200), --数据库的名称
@rdbname varchar(200)
)
AS
exec('Create DataBase '+@dbname)
exec('use '+@rdbname+';select * into '+@dbname+'..R_Category from(select top 100 percent * from R_Category)a')
go
其中@dbname为新建数据库名字。 @rdbname为数据库源名
存储过程的操作是通过用户输入参数 创建新数据库,然后复制 数据库源下的R_Category 表结构和所有内容。然后我建个winform应用程序,不知道如何调用这个存储过程以及传参
这是我 创建的一个类:
public void procName11(string dbname,string rdbname)
{
SqlParameter[] param = new SqlParameter[2]; param[0]=new SqlParameter("@dbname", SqlDbType.NVarChar,200);
param[0].Value = dbname;param[1]=new SqlParameter("@rdbname", SqlDbType.NVarChar,200);
param[1].Value = rdbname;
}
然后我就不知道怎么写了。。请教高手帮忙解答。!!!急
这个是他窗体连接数据库代码:
SqlConnection con = new SqlConnectio("server=.;uid="+this.txtid.Text+";pwd="+this.txtpwd.Text+";database="+this.txtrs.Text+";");连接数据库的用户名和密码全是未知的,只有用户在安装的时候输入新数据库名,数据库源 用户名和密码,才能创建新数据库请教高手~~~~~~~~~~~急~~~~~~~谢谢
comm.commandtype = commandtype.storedprocedure;
comm.parameters.add(new SqlParameter("@dbname", SqlDbType.NVarChar,200));
comm.parameters.add(new SqlParameter("@rdbname", SqlDbType.NVarChar,200));comm.parameters[0].value = dbname;
comm.parameters[1].value = rdbname;comm.executenoquery();
用完之后还要close();
cm.CommandType=CommandType.StoredProcedure;
完了后面的就安装你那么写,最后执行一下COMMAND的cm.ExecuteQuery();
先试试吧。