WinRT/Metro SQLite 数据库连接方法(DBHelper)
2013-02-28 10:40
274 查看
SQLite 数据库连接方法
第一步:
第二步
第三步
namespace DBHelper.Base
{
public
class
DBHelperSQLite :
DBHelperBase
{
const
string FilePath =
@"App_Data\Data.dat";
private
static
async
Task<string>
getFile()
{
var file =
await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFileAsync(FilePath);
return file.Path;
}
string Path {
get;
set; }
public
string ConnectionString
{
get
{
if (Path
== null || Path ==
string.Empty)
{
Path = Windows.ApplicationModel.Package.Current.InstalledLocation.Path
+ "\\" + FilePath;
}
return
Path;
}
}
#region Linq SQL
public
override
int Insert<T>(T Data)
{
int result
= -1;
using (var
db = new SQLite.SQLiteConnection(ConnectionString))
{
result = db.Insert(Data);
db.Close();
}
return result;
}
public
override
int Update<T>(T Data)
{
int result
= -1;
using (var
db = new SQLite.SQLiteConnection(ConnectionString))
{
db.Update(Data);
db.Close();
}
return result;
}
public
override
int Delete<T>(object
primaryKey)
{
int result
= -1;
using (var
db = new SQLite.SQLiteConnection(ConnectionString))
{
db.Delete<T>(primaryKey);
db.Close();
}
return result;
}
public
override
List<T> Query<T>(string
query, params
object[] args)
{
List<T> result
= null;
using (var
db = new SQLite.SQLiteConnection(ConnectionString))
{
result = db.Query<T>(query, args);
db.Close();
}
return result;
}
#endregion
#region Linq Table
public
int CreateTable<T>()
{
int result
= -1;
using (var
db = new SQLite.SQLiteConnection(ConnectionString))
{
result = db.CreateTable<T>();
db.Close();
}
return result;
}
public
bool ExistTable<T>()
where T :
new()
{
bool result
= false;
using (var
db = new SQLite.SQLiteConnection(ConnectionString))
{
//result = db.Table<T>().;
db.Close();
}
return result;
}
public
int DropTable<T>()
{
int result
= -1;
using (var
db = new SQLite.SQLiteConnection(ConnectionString))
{
result = db.DropTable<T>();
db.Close();
}
return result;
}
#endregion
}
}
第一步:
第二步
第三步
namespace DBHelper.Base
{
public
class
DBHelperSQLite :
DBHelperBase
{
const
string FilePath =
@"App_Data\Data.dat";
private
static
async
Task<string>
getFile()
{
var file =
await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFileAsync(FilePath);
return file.Path;
}
string Path {
get;
set; }
public
string ConnectionString
{
get
{
if (Path
== null || Path ==
string.Empty)
{
Path = Windows.ApplicationModel.Package.Current.InstalledLocation.Path
+ "\\" + FilePath;
}
return
Path;
}
}
#region Linq SQL
public
override
int Insert<T>(T Data)
{
int result
= -1;
using (var
db = new SQLite.SQLiteConnection(ConnectionString))
{
result = db.Insert(Data);
db.Close();
}
return result;
}
public
override
int Update<T>(T Data)
{
int result
= -1;
using (var
db = new SQLite.SQLiteConnection(ConnectionString))
{
db.Update(Data);
db.Close();
}
return result;
}
public
override
int Delete<T>(object
primaryKey)
{
int result
= -1;
using (var
db = new SQLite.SQLiteConnection(ConnectionString))
{
db.Delete<T>(primaryKey);
db.Close();
}
return result;
}
public
override
List<T> Query<T>(string
query, params
object[] args)
{
List<T> result
= null;
using (var
db = new SQLite.SQLiteConnection(ConnectionString))
{
result = db.Query<T>(query, args);
db.Close();
}
return result;
}
#endregion
#region Linq Table
public
int CreateTable<T>()
{
int result
= -1;
using (var
db = new SQLite.SQLiteConnection(ConnectionString))
{
result = db.CreateTable<T>();
db.Close();
}
return result;
}
public
bool ExistTable<T>()
where T :
new()
{
bool result
= false;
using (var
db = new SQLite.SQLiteConnection(ConnectionString))
{
//result = db.Table<T>().;
db.Close();
}
return result;
}
public
int DropTable<T>()
{
int result
= -1;
using (var
db = new SQLite.SQLiteConnection(ConnectionString))
{
result = db.DropTable<T>();
db.Close();
}
return result;
}
#endregion
}
}
相关文章推荐
- Windows 8 Metro应用中使用C#连接SQLite及创建数据库,数据表的增删改查
- Windows 8 Metro用C#连接SQLite及创建数据库,数据表的增删改查的实现
- flask框架实现连接sqlite3数据库的方法分析
- Abp.NHibernate连接PostgreSQl数据库的方法
- WindowsXP中用IIS浏览ASP不能连接数据库问题的解决方法
- Android+SQLite将txt等文本文件转化为db数据库文件的方法
- sqlite:多线程操作数据库“database is locked”解决方法(二)
- Yii连接多个数据库的方法
- 数据库中两张表的各种连接方法
- PHP连接数据库新方法phpPDO
- Spring MVC配置双数据源实现一个java项目同时连接两个数据库的方法
- 网页连接各种数据库方法大全
- CodeIgniter针对数据库的连接、配置及使用方法
- 数据库连接的两种方法
- ASP常用数据库连接及操作的方法和技巧
- thinkPHP连接sqlite3数据库的实现方法(附Thinkphp代码生成器下载)
- ADO连接数据库,编译到客户机运行时出现CreateInstance报错0x80004002、CreateParameter报0xC0000005错误的解决方法。
- 数据库的多表连接查询方法
- c#数据库连接方法
- PL/SQL developer 可以连接本地数据库,但是不可以连接远程数据库的解决方法