sql server CE数据同步更新中,插入数据rowguid的问题

elvis_gao 2007-10-29 07:05:25
我现在做的项目用到pda开发,我用sql server 2005,vs 2005开发window mobile 6程序,
想要数据库同步更新,我用的方法是“合并复制”和“请求订阅”,表中自动创建了一个字段“rowguid”,但是我插入一条数据时,报错:列“rowguid”不允许空值。怎样解决,编辑一条记录,sdf文件得到更改,但是数据库没变,不能达到同步,不知哪里有问题,我是按照http://www.itpub.net/788212.html 里面的方法做的
我是做asp.net开发的,以前没做过这个,所以叙述也不是很准确,请见谅
...全文
300 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
3nt 2007-10-30
  • 打赏
  • 举报
回复
sqlce不像sql server不能自动生成guid 需要需要你自己生成一个guid插入。
方法请参考:
http://www.codeproject.com/netcf/PPCGuidGen.asp
elvis_gao 2007-10-29
  • 打赏
  • 举报
回复
这是我的代码,请看一下,感谢各位高手,我很着急,从头学,已做了3天了
public partial class Form1 : Form
{
string filename = @"\Program Files\SQLMobile\sqlmobile.sdf";
string CumputerName = @"ElvisGao";
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
DeleteDB();
Sync();
if (snapshotDataSetUtil.DesignerUtil.IsRunTime())
{
this.userInfoTableAdapter.Fill(this.snapshotDataSet.UserInfo);
}
}
private void Sync()
{
SqlCeReplication repl = new SqlCeReplication();
repl.InternetUrl = @"http://localhost/sqlmobile/sqlcesa30.dll";
repl.Publisher = CumputerName;
repl.PublisherDatabase = @"SQLMobile";
repl.PublisherSecurityMode = SecurityType.NTAuthentication;
repl.Publication = @"SQLMobile";
repl.Subscriber = @"SQLMobile";
repl.SubscriberConnectionString = @"Data Source='" + filename + "';Password='';Max Database Size='128';Default Lock Escalation ='100';";
try
{
repl.AddSubscription(AddOption.CreateDatabase);
repl.Synchronize();
}
catch (SqlCeException e)
{
MessageBox.Show(e.ToString());
}
}
private void DeleteDB()
{
if (System.IO.File.Exists(filename))
{
System.IO.File.Delete(filename);
}
}
private void newMenuItemMenuItem_Click(object sender, EventArgs e)
{
userInfoBindingSource.AddNew();
SQLMobile.UserInfoEditViewDialog userinfoEditViewDialog = SQLMobile.UserInfoEditViewDialog.Instance(this.userInfoBindingSource);
userinfoEditViewDialog.ShowDialog();
}

private void userInfoDataGrid_Click(object sender, EventArgs e)
{
SQLMobile.UserInfoSummaryViewDialog userinfoSummaryViewDialog = SQLMobile.UserInfoSummaryViewDialog.Instance(this.userInfoBindingSource);
userinfoSummaryViewDialog.ShowDialog();
}
}

19,504

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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