首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > WinCE >

Wince 下跑Sqlite的有关问题 miss

2013-03-26 
Wince 下跑Sqlite的问题 miss刚开始在wince下做开发,现在正在试着用sqlite。按照网上的例子程序写了一段代

Wince 下跑Sqlite的问题 miss
刚开始在wince下做开发,现在正在试着用sqlite。按照网上的例子程序写了一段代码,运行之后数据库创建和连接都能成功,但是运行到创建表的时候总是在“cmd.CommandText = sql”这一行提示“MissingMethodException”。另外打开数据的时候,我本来使用的是“Open()”这个函数,但是因为总是提示“MissingMethodException”,我就换成了“OpenAndReturn()”,然后不提示出错了,但是走到设置SQliteCommand的相关参数的时候就出错。往高手指教。


private void button2_Click(object sender, EventArgs e)
        {
            // 创建一个空数据库
            string DbName = "test1.db";
            SQLiteConnection.CreateFile(DbName);
            MessageBox.Show("数据库创建完成。");

            // 连接数据库
            string connStr = "data source=" + DbName + ";Pooling=true;FailIfMissing=false";
            SQLiteConnection conn = new SQLiteConnection(connStr);
            conn.OpenAndReturn();
            MessageBox.Show("数据库连接完成。");

            // 创建表
            System.Data.SQLite.SQLiteCommand cmd = new System.Data.SQLite.SQLiteCommand(conn);
            string sql = "CREATE TABLE test(username varchar(20),password varchar(20))";
            cmd.CommandText = sql;
            cmd.ExecuteNonQuery();
            MessageBox.Show("数据库表创建完成。");

            // 插入数据
            sql = "INSERT INTO test VALUES('dotnetthink','mypassword')";
            cmd.CommandText = sql;
            cmd.ExecuteNonQuery();
            MessageBox.Show("插入数据完成。");

            // 取出数据
            sql = "SELECT * FROM test";
            cmd.CommandText = sql;
            System.Data.SQLite.SQLiteDataReader reader = cmd.ExecuteReader();
            StringBuilder sb = new StringBuilder();
            while (reader.Read())
            {
                sb.Append("username:").Append(reader.GetString(0)).Append("\n");
                sb.Append("password:").Append(reader.GetString(1));
            }


            MessageBox.Show(sb.ToString());
        }


[解决办法]
楼主第一步要做的是编译出能在wince6.0下使用的SQLite3库
我以前做项目时测试过wince下的sqlite3程序,没任何问题
还有楼主可以下载一个网上一个牛人封装的SQLite3操作类,CppSQLite3U , 可以直接使用

热点排行