移动设备开发中绝对路径的使用

一 SQL Mobile移动终端数据库操作 

1 建sdf的数据库
  安装VS2005后,包括了sql ce名字叫 SQL Mobile 呵呵 新建个Mobile应用程序,在项目中添加一个SQL Mobile数据库,然后直接在VS2005中可以设计新建的数据库的结构、添加数据等操作。 在使用模拟器调试程序的时候,如果想保留模拟器上的数据库数据,可以在VS2005项目中去除.sdf文件,这样每次调试就不会覆盖模拟器上的数据库文件了。

2 数据库的连接
  看MSDN文档上写的很清楚了,但有一点注意,MSDN连接字符串大都写成conn.ConnectionString = "Data Source = 'cookbook.sdf'"; 
其中数据库文件不带路径,在移动设备中这样写不可以,好像不能使用相对路径,必须使用绝对路径的,
conn.ConnectionString = "Data Source = '" + Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase) + @"\cookbook.sdf'";

这样也才能成功。

3 数据操作
  MSDN 上写的很清楚了 呵呵

  SqlCeConnection conn = this.getConn();
         conn.Open();
                        try
                        {
                            string xiid = this.cBox.SelectedItem.ToString();
                            xiid = xiid.Substring(0,1);
                          
                            SqlCeCommand com = new SqlCeCommand();
                            com.Connection = conn;
                            com.CommandText = "insert into cookmain(name,descr,xiid) values('" + this.cookName.Text.Trim()
                                                + "','" + this.content.Text.Trim() + "'," + xiid + ")";

                            if (com.ExecuteNonQuery() > 0)
                            {
                                MessageBox.Show("保存成功!");                      

                            }
                            else
                                MessageBox.Show("保存失败,请重新添加");
                        }
                        finally
                        {
                            conn.Close();
                        }

 这是我写的一个插入操作 很简单。 

posted @ 2007-04-28 09:23  chinaifne  阅读(453)  评论(1编辑  收藏