Unity3d 读取 Sqlite数据库

来源:互联网 发布:淘宝哪家茶叶店靠谱 编辑:程序博客网 时间:2024/05/22 06:23

首先需要一个sqlite的DLL文件,在Unity安装目录可以找到。


http://download.csdn.net/detail/cp790621656/8017075



代码如下:

using UnityEngine;using System.Collections;using Mono.Data.Sqlite;using System;public class Helper : MonoBehaviour {private SqliteConnection mSqliteConnection;private SqliteCommand mSqliteCommand;private SqliteDataReader mSqliteDataReader;// Use this for initializationvoid Start () {//打开数据库try{string dbpath=Application.dataPath+"/game.db";mSqliteConnection = new SqliteConnection("URI=file:"+dbpath);mSqliteConnection.Open();}catch(Exception e){Debug.Log(e.ToString());}//查询一个数据string sqlquerystr = "select * from type_skill_attribute where id < 30";mSqliteCommand = mSqliteConnection.CreateCommand ();mSqliteCommand.CommandText = sqlquerystr;mSqliteDataReader = mSqliteCommand.ExecuteReader ();while(mSqliteDataReader.Read()){int customid=mSqliteDataReader.GetOrdinal("skill_id"); //获取列ID,从0开始Debug.Log("customid = "+customid);int skill_id=mSqliteDataReader.GetInt32(customid);customid=mSqliteDataReader.GetOrdinal("type");Debug.Log("customid = "+customid);string type=mSqliteDataReader.GetString(customid);Debug.Log("skill_id = "+skill_id+" type = "+type);}mSqliteDataReader.Close ();if(mSqliteCommand!=null){mSqliteCommand.Dispose ();}if(mSqliteConnection!=null){mSqliteConnection.Close ();            mSqliteConnection = null;}}// Update is called once per framevoid Update () {}}

挂载到Camera上就可以。

0 0