Unity3d 中文输入输出 查询sqlite数据库
CnGuiDB.js
var db : dbAccess;
public var mskin : GUISkin;
private var mstring : String;
var inputStr;
function Start(){
inputStr = "1";
}
function search(mid)
{
db = new dbAccess();
db.OpenDB("db1.db");
var tableName = "myTable";
// table name, I want to return everyone whose first name is Bob when their last name is = to Sagat, this returs an array
var resultArray = db.SingleSelectWhere(tableName, "name", "id", "=", mid); // Remember the '' on String values
mstring=resultArray[0];
print(mstring);
// of course you can loop through them all if you wish
db.CloseDB();
}
function OnGUI()
{
GUI.skin=mskin;
inputStr =GUI.TextField(new Rect(200, 154, 200, 30),inputStr,25);
if(GUI.Button(new Rect(400,154,60,30),"search"))
{
search(inputStr);
}
GUI.Label(new Rect(10,400,400,900),mstring);
}
编辑模式 db1放在工程总目录下,与assets\library\temp同级
exe部署 db1放在可执行文件同级
sqlite参照:
http://forum.unity3d.com/viewtopic.php?t=30249&start=0&postdays=0&postorder=asc&highlight=
中文输入输出参照:
http://bbs.vrchina.net/viewthread.php?tid=11357
http://bbs.vrchina.net/viewthread.php?tid=11636&extra=page%3D1
sqlite管理工具
http://img.newhua.com/softinfo/90240/
相关文档:
SqLite.net的dll为System.Data.SQLite.dll,这种dll分为32位、64位和适用于compactframework三种,在引用时要注意,选择正确的dll。
将要保存图片的字段类型设为blob。代码如下:
private void savePicture()
{
using (SQLiteConnection cnn = new SQLiteConnection(dbPath))
......
1、.back ?DB? FILE 备份DB(默认为main)到文件
2、.bail ON|OFF 遇到一个错误扣停止,该值默认为OFF
3、.databases 列举附加到数据库的数据库名和文件名
4、.dump ?TABLE? ... 用SQL文本格式列举数据库,如果指定TABLE,仅仅列举匹配的表,LIKE类型TABLE
5、.echo ON|OFF 设置echo的状态 ......
backup ?DB? FILE 备份数据库到文件,默认备份的是main数据库,如果不附加数据库,test.db文件中默认的只有main数据库。 命令操作举例:
sqlite> .backup mydb.bak
sqlite>
此时可以再F盘看到mydb.bak文件,用记事本打开虽然是乱码,但可窥见一斑。
.restore ?DB? FILE 从备份文件还原数据和.backup相对应. 接上 ......
.nullvalue STRING 用STRING代替null值显示,不难理解,就不再累述了。
.output FILENAME 设置把查询输出到文件,后面的输出结果都保存到文件中,如:
sqlite> .mode list
sqlite> .output websites.txt
sqlite> select * from websites;
sqlite>
可以在F盘下发现建立了websites.txt文件,其内容如下:
......
搞定了一个困扰许久的问题,原来sqlite中的主键也是可以设置为自增的:)方法就是声明为 INTEGER PRIMARY KEY 的字段可以自动增加。
网上查到资料说,从 SQLite 的 2.3.4 版本开始,如果将一个表中的一个字段声明为 INTEGER PRIMARY KEY,那么只需向该表的该字段插入一个 NULL 值, ......