以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]sql server数据新增数据  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=174421)

--  作者:2425004926
--  发布时间:2022/1/14 12:55:00
--  [求助]sql server数据新增数据
在sql server数据库里:
是否可以用固定数量的字符字段:nchar(10)

我看到用狐表增加的字符字段都是:nvarchar(n)

还有备注字段是:nvarchar(max),这个是否太大,备注列能设置成nvarchar(4000)吗?

另有,对于约束,在狐表表事件里设置,是否还要在sql server数据库里也设置

因为碰到了在狐表里新增数据,保存后新增数据没有了,在sql server里查看新增的数据全成了空值

--  作者:2425004926
--  发布时间:2022/1/14 13:20:00
--  
 这个数据库里的字段是我在sql server里增加的,不是在狐表里增加的,是否存在哪里的设置不对

--  作者:2425004926
--  发布时间:2022/1/14 13:32:00
--  
我看了,在表属性增加行后执行,即DataRowAdded事件里,加代码就出问题,

e.DataTable.save()‘这里还没问题

e.DataRow("Creator") = User.Name
e.DataRow("Possessor") = User.Name   ’这里也没问题

e.DataTable.save()   ‘只要保存就出错

--  作者:有点蓝
--  发布时间:2022/1/14 13:43:00
--  
可以用固定数量的字符字段:nchar(10),但是还是建议使用nvarchar。nchar会自动补齐空格,代码里很多地方判断就会有问题的。

备注列能设置成nvarchar(4000),只要超过255就可以,具体长度根据需要自己改

3楼代码保存出什么错

--  作者:2425004926
--  发布时间:2022/1/14 13:53:00
--  

"Creator”和"Possessor“字段都是nvarchar(10)

只要保存这一新增行就不显示了,sql server里查看就是空值


--  作者:有点蓝
--  发布时间:2022/1/14 14:05:00
--  
我测试没有问题,请上传实例说明
--  作者:2425004926
--  发布时间:2022/1/14 14:24:00
--  
 我重新创建了表,是有没问题了,谢谢老题!

对于时间列
狐表默认用的是datetime字段,是否smalldatetime字段也尽量少用,还是?
[此贴子已经被作者于2022/1/14 14:28:17编辑过]

--  作者:有点蓝
--  发布时间:2022/1/14 14:46:00
--  
参考:http://www.foxtable.com/webhelp/topics/1650.htm