便民 发表于 2015-5-2 12:13:28

Windows Phone(二) WP7数据库连接(SQLite数据库)

  本文算是整理,了ArcGIS_Mobile 和 锦燕云 的博文:
  地址: http://blog.iyunv.com/arcgis_mobile/article/details/7597519
  参考文章
  本文是一个简要的WP7数据库连接(SQLite数据库)操作过程,图文并茂,适应各种人士,O(∩_∩)O~...
  准备工作: 下载我弄好的压缩包http://115.com/file/an0tifop#SQLite.rar(暂时存在115网盘的,打开链接后直接点 "普通下载" 就OK了)
  1. 创建数据库
  第一步:新建 Windows Phone应用程序,目标平台选择 wpos 7.1(我给项目取名为TestSQLite)

  第二步:添加压缩包中 Community.CsharpSqlite.WP.dll 的引用:
  (引用,单击鼠标右键-->添加引用...)

  第三步: 添加四个按钮 :注意命名(btnOpen 创建并打开数据库 ,btnPopulate创建表 ,btnClear 清空数据,btnClose,关闭连接)

  第四步: 添加对SQLite的引用:
  using SQLiteClient;
  第五步: 添加SQLite数据库连接变量:
  SQLiteConnection mySQLiteDB = null;





public partial class MainPage : PhoneApplicationPage
{
SQLiteConnection mySQLiteDB = null;
// 构造函数
public MainPage()
{
InitializeComponent();
}

  
第六步: 给“Open”按钮添加事件,创建并打开数据库:


Open按钮点击事件




1 private void btnOpen_Click(object sender, RoutedEventArgs e)
2
3         {
4
5             if (mySQLiteDB == null)
6
7             {
8
9               mySQLiteDB = new SQLiteConnection("TestSQLiteDB");
10
11               mySQLiteDB.Open();
12
13
14
15               btnOpen.IsEnabled = false;
16
17               btnClose.IsEnabled = true;
18
19               btnClear.IsEnabled = false;
20
21               btnPopulate.IsEnabled = true;
22
23             }
24
25         }

  第七步:创建表,并往表中填充数据:


创建数据表并添加数据




private void btnPopulate_Click(object sender, RoutedEventArgs e)
{
//创建表RegisteredStudents,有3个属性:id、姓名、学号

SQLiteCommand cmd = mySQLiteDB.CreateCommand("Create table RegisteredStudents (id int primary key,name text,zipcode numeric(7))");
int i = cmd.ExecuteNonQuery();
int id = 0;
string name = "Name" + id;
int zipcode = 98000;
for (int j = 0; j < 10; j++)
{
id++;
name = "Name" + id;
zipcode = 98000 + id;
cmd.CommandText = " Insert into RegisteredStudents (id, name, zipcode) values (" + id +",\"" + name + "\"," + zipcode +")";
i = cmd.ExecuteNonQuery();
}

btnPopulate.IsEnabled = false;
btnClear.IsEnabled = true;
}

  第八步:清空表中的数据:


清空表中数据




private void btnClear_Click(object sender, RoutedEventArgs e)
{
SQLiteCommand cmd = mySQLiteDB.CreateCommand("drop table RegisteredStudents");
int i = cmd.ExecuteNonQuery();

btnPopulate.IsEnabled = true;
btnClear.IsEnabled = false;
}

  第九步: 断开数据库连接,关闭数据库:


断开链接,关闭数据库




private void btnClose_Click(object sender, RoutedEventArgs e)
{
if (mySQLiteDB != null)
{
mySQLiteDB.Dispose();
mySQLiteDB = null;
btnOpen.IsEnabled = true;
btnPopulate.IsEnabled = false;
btnClear.IsEnabled = false;
btnClose.IsEnabled = false;
}
}

  运行程序,点击open可以在WP的模拟器的独立存储空间中创建名为“TestSQLiteDB”数据库,点击populate按钮可以为其填充数据,点击clear可以清空数据库中的数据,close关闭数据库连接;
  2.获取数据库文件,
  第一步: 直接双击WindowsPhonePowerTools.application 文件,

  稍等片刻后出现以下界面, 有三个选项,选择(512M这一项) , 真机就选择第一项,之后点击CONNECT

  第二步: 点击CONNECT后:出现以下页面点击BROWSE按钮,选择你创建的这个Windows Phone项目下的xap文件
  (既是编译之后,Debug下的xap,例如我的XAP位置: C:\Users\RY\Documents\Visual Studio 2010\Projects\FirstWP\TestSQLite\Bin\Debug) 

  第三步: 再点击 INSTALL,稍等片刻,这个地方,我2 了一把,以为点击INSTALL就OK 了,
  实际上是要点击:,
  之后出现下图:.....O(∩_∩)O哈哈~你看到了吧-->TestSQLite,

  点开就能看到数据库了...就是这个TestSQLiteDB,点击 GET 按钮,将这个数据库文件保存到桌面 (注意,如果你还处于调试状态,此时要停止调试,否则会报错,..),

  3.操作数据库
  安装压缩包中的 SQLiteManagerSetup 工具
  安装好后,双击,后点击 Use Demo -->Continue,找到保存在桌面的TestSQLiteDB,打开:

  以上,这就是你创建的数据库,现在你可以操作它了....
   4. 补充一点SQLite的东东:
  1.SQLite数据类型:无类型(Typelessness) 意味着可以保存任何类型的数据,但最好还是添加上数据类型,这样方便维护.
      2. SQL语句:
    创建表:
     create Students(id int,name text,age int)
     插入数据:
    insert into Students (id,name,age) values( 3,"EE",23);
     insert into Students (id,name,age) values( 4,"AA",24);
     insert into Students (id,name,age) values( 5,"VV",25);
     数据查询:
    SELECT * FROM Students WHERE name ='EE' ORDER BY id
   如果你有什么问题,可以给我留言,O(∩_∩)O谢谢!
    欢迎各种砖块,...O(∩_∩)O哈哈~...
页: [1]
查看完整版本: Windows Phone(二) WP7数据库连接(SQLite数据库)