一个C#小问题。。 public int GetAdd(TestTable model){string _Add1 insert into test2 ([Name],[DataCo
一个C#小问题。。
public int GetAdd(TestTable model)
{
string _Add1 = "insert into test2 ([Name],[DataContent]) values ('{0}',{1});select @@identity";
string _Add2 = "insert into test1 ([DataType]) values ({0});select @@identity";
if (DAL.SQL.GetAdd(string.Format(_Add2, model.DataType)) != null)
{
object obj1 = DAL.SQL.GetAdd(string.Format(_Add1, model.Name, model.DataContent));
if (obj1 != null)
{
return Convert.ToInt32(obj1);
}
else
{
return -2;
}
}
else
{
return -1;
}
}
两张表... test1是 ID 和 DataType test2是ID Name,DataContent!
ID主键自增长。
问题:现在我这种方法写,添加之后只有 test1 插入了数据,test2无数据。。
请高手帮我修改下。。让我能同时插入数据,实现ID增长同步。。
[最优解释]说明你的_Add1报异常了,估计三数据库约束造成的。
而异常被你的DbHelper吃掉了,在DbHelper里面搞个断点看一看。
[其他解释]看看执行if (DAL.SQL.GetAdd(string.Format(_Add2, model.DataType)) != null)返回的是什么值,如果是-1的话说明DAL.SQL.GetAdd(string.Format(_Add1, model.Name, model.DataContent));根本就没执行到
[其他解释]大哥...都说了test1有数据插入了./.....
[其他解释]'{0}',{1}
你sql语句有问题
values ('{0}',{1});select @@identity
[其他解释]DataContent是什么类型的?
[其他解释]string _Add1 = "insert into test2 ([Name],[DataContent]) values ('{0}',{1});select @@identity"; 是不是应该是 values('{0}','{1}') 第二个参数缺少单引号。
string _Add2 = "insert into test1 ([DataType]) values ({0});select @@identity";
[其他解释]test2根本没有执行到。所以楼主看看Test1执行结果,才能确定如何修改。
[其他解释]我是来看7楼头像的
[其他解释]null