在执行下面这段代码时
new AssetCategory().set("assetNo",assetNo).set("assetDescription",assetDescription).save();
会出现异常,The attribute name does not exist: "id",数据会成功插入数据库,但程序没法继续往下跑了。我在table中加一个id int 字段后,
new AssetCategory().set("assetNo",assetNo).set("assetDescription",assetDescription).set("id",0).save();
这样就不会有异常。我用的SQL Server数据库。数据库中是必须要存在"id"这个字段吗?希望前辈能指点一下,谢谢了!
项目:JFinal
如果主键名不是 "id" 时,需要在映射时指定一下:
activeRecordPlugin.addMapping("asset_category", "other_id_name", AssetCategory.class);
建议直接使用 jfinal 的后成器来生成这些代码,生成器会自动反射得到 "other_id_name" 这种 meta 信息
生成器在首页可以下载 jfinal demo 这个项目中得到