1
我用SqlServer的2008年這裏是DB模式:(請注意,這只是測試亞音速)無法插入使用記錄(SqlServer的)亞音速2.2
Create Table Dept
(
DeptID int not null Identity(1,1) primary key,
DeptName varchar(20),
Location varchar(30)
)
GO
Create Table tUsers
(
UserID int not null identity(1,1) primary key,
UserName varchar(50)
)
GO
create table Emp
(
EmpID int not null identity(1,1) primary key,
DeptID int foreign key references dept(deptid),
CreatedBy varchar(50),
EmpName varchar(50)
)
下面是C#代碼保存員工:
Emp em = new Emp();
em.DeptID = 3;
em.CreatedBy = "Temp1";
em.EmpName = "Temp3";
em.Save();
這裏是SQL事件探查器跟蹤:
exec sp_executesql N'/* GetInsertSql(Emp) */ INSERT INTO [dbo].[Emp]([DeptID],[CreatedBy],[EmpName]) VALUES(@DeptID,@CreatedBy,@EmpName);SELECT SCOPE_IDENTITY() AS newID;',N'@DeptID int,@CreatedBy varchar(8000),@EmpName varchar(5)',@DeptID=3,@CreatedBy='',@EmpName='Temp3'
可以看出,CreatedBy永遠是空的,即使你gh值是從應用程序傳遞的。 (此前,此列是外鍵,但SubSonic總是拋出(Format)錯誤,因此我根據SubSonic論壇的建議將其更改爲varchar。
任何想法出了什麼問題?
在此先感謝。
沙迪亞納拉亞南