SQLite使用总结(C#版 潘鹏)
简述关系型 优点:1.嵌入式,我的理解就是跟着程序走,轻便,只需一个dll可享受所有服务 缺点:自己查吧 工具
1.部署
2.连接private SQLiteConnection _connection;
private void ConnectionDb(string dbName,string path = null)
{
if(null == path)
path = Environment.CurrentDirectory;
var connectionString = string.Format(@"Data Source={0}{1}.db;Pooling=true;FailIfMissing=false",path,dbName);
_connection = new SQLiteConnection(connectionString);
_connection.Open();
}
1.玩过数据库的人一看也明白什么意思了,就不加注释了 2.由此看出SQLite的后缀是.db 3.连接字符串的写法按网上的写法错误,估计不是版本更新了,就是没有测试就上传博文。错误图如下 4.连接字符串正确的写法可参考我的,或者在你安装SQLite后有一个”Test Application“的exe,可复制它的写法,运行后图如下 3.建库1.在上面的连接给出的代码中已经有建库的代码,库名dbName 2.dbName,有,连接,无,创建 3.库中没有表是无法看到该库的 4.电脑上建一个txt,后缀改为db,就可以当做SQLite的库来用 4.建表private void CreateTable(string tableName,List<string> columsName )
{
var colums = columsName.Aggregate( (current,colum) => current + ("," + colum) ); //建表的列时不用考虑列的类型 var sql = string.Format("create table if not exists {0}({1})",tableName,colums); SQLiteCommand cmd = new SQLiteCommand(sql,_connection); cmd.ExecuteNonQuery(); }
1.定义表的字段,不用考虑类型 2.ExecuteNonQuery来执行SQL语句 5.插入private void Insert(string tableName,List<string> valueList)
{
var valus = valueList.Aggregate((current,valu) => current + string.Format(",'{0}' ",valu)); var sqlInsert = new SQLiteCommand(_connection); sqlInsert.CommandText = string.Format("insert into {0} values({1})",valus); sqlInsert.ExecuteNonQuery(); }
6.关闭private void CloseDb()
{
_connection.Close();
}
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |