.net自动生成数据层的问题

luyuanshangao 2008-09-20 10:21:51
#region//新增员工
public int InsertEmployee(int empid, string empno, string empname,byte sex)
{

per.database.EmployeeDataSetTableAdapters.per_employee1TableAdapter adapter = new per.database.EmployeeDataSetTableAdapters.per_employee1TableAdapter();
EmployeeDataSet.per_employee1DataTable table = new EmployeeDataSet.per_employee1DataTable();
EmployeeDataSet.per_employee1Row row = table.Newper_employee1Row();
empid=Convert.ToInt32(adapter.up_create_id("per_employee", "emp_id", 0))+1;
row[table.emp_idColumn] = empid;
row[table.emp_noColumn] = empno;
row[table.emp_nameColumn] = empname;
row[table.sexColumn] = sex;
table.Rows.Add(row);
DataTable dt = table.GetChanges();
try
{
adapter.Update(table); ApplicationLog.WriteLog("Person", "员工", 1, table.emp_idColumn.ColumnName, table.emp_nameColumn.ColumnName, dt, null);
return 1;

}
catch (Exception ex)
{
ApplicationLog.WriteLog("Person", "员工", 1, table.emp_idColumn.ColumnName, table.emp_nameColumn.ColumnName, dt, ex.Message);
return -1;
}
}

update会报错,错误是列emp_dept1_id不能插入null,发生在表f3gsd_per_employee1

注:数据库中表名是per_employee ,且没有emp_dept1_id字段
...全文
129 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
平凡的傲娇 2008-09-21
  • 打赏
  • 举报
回复
可以到网上下一个代码生成工具啊,可以帮助你生成model,bll,dal层的代码
luyuanshangao 2008-09-20
  • 打赏
  • 举报
回复
数据库里根本就没有那列
lin45143777 2008-09-20
  • 打赏
  • 举报
回复
数据库有不能为空列,而你给它的值是空的,调试把Sql语句拿到数据库试下就知道了
绿绦 2008-09-20
  • 打赏
  • 举报
回复
你的"emp_dept1_id"这列没有查入值 "emp_dept1_id不能插入null"
你最好根据数据的设计处理
最好是自己写ID(主键)使用GUID生成就可以
JeffChung 2008-09-20
  • 打赏
  • 举报
回复
没有它会说有?难道是灵异事件?
BinaryTreeEx 2008-09-20
  • 打赏
  • 举报
回复
看着有点晕,纯友情up
yagebu1983 2008-09-20
  • 打赏
  • 举报
回复
好像是类型化的问题
你再检查一下类型化正确否??

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧