有个数据库,名为aa_bb_cc和存储过程,名为sp_select:
存储过程:
create .......
@dbName varchar(100)
AS
declare @tableName varchar(100)
set @tableName =".dbo.asdf";
exec('select * from @dbName+@tableName')现在我用Sqldataadapter和sqlCommandBuilder进行数据库操作如下:
sqlcommand cmd=new sqlcommand("sp_select",con);
cmd.params...add("@dbName"sqldbtype.....,"@dbName")
cmd.params..["@dbName"].value="[aa_bb_cc]"
cmd.commandtype=......;
Sqldataadapter da=new Sqldataadapter(cmd);
sqlCommandBuilder cb=new sqlCommandBuilder(da);
con.open()
da.fill(dataset) //正确
da.update(dataset)//错误,因为使用了aa_bb_cc的数据库名而且没加[],正确的应该为([aa_bb_cc])
con.close();
原因应该是da.update自动调用时把我刻意加了[]的[aa_bb_cc]数据库名中的”[]“去掉造成了数据库名错误。各位应该怎么解决啊????
存储过程:
create .......
@dbName varchar(100)
AS
declare @tableName varchar(100)
set @tableName =".dbo.asdf";
exec('select * from @dbName+@tableName')现在我用Sqldataadapter和sqlCommandBuilder进行数据库操作如下:
sqlcommand cmd=new sqlcommand("sp_select",con);
cmd.params...add("@dbName"sqldbtype.....,"@dbName")
cmd.params..["@dbName"].value="[aa_bb_cc]"
cmd.commandtype=......;
Sqldataadapter da=new Sqldataadapter(cmd);
sqlCommandBuilder cb=new sqlCommandBuilder(da);
con.open()
da.fill(dataset) //正确
da.update(dataset)//错误,因为使用了aa_bb_cc的数据库名而且没加[],正确的应该为([aa_bb_cc])
con.close();
原因应该是da.update自动调用时把我刻意加了[]的[aa_bb_cc]数据库名中的”[]“去掉造成了数据库名错误。各位应该怎么解决啊????
不知道大家有什么解决的方法吗?