//
// SqLiteManager.h
// MySqlite
//
// Created by long on 15/9/15.
// Copyright (c) 2015年 WLong. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "LanOuStudent.h"
#import <sqlite3.h>
@interface SqLiteManager : NSObject
+ (SqLiteManager *)shareManager;
// 打开数据库
- (sqlite3 *)openDB;
// 关闭数据库
- (void)closeDB;
// 创建表
- (void)createTable;
// 插入数据
- (void)insertWithStudent:(LanOuStudent *)student;
// 删除数据
- (void)deleteWithAge:(NSInteger)age;
// 更改数据 根据名字 更改学号
- (void)updateName:(NSString *)name byAge:(NSInteger)age;
// 查询学生 根据名字和学号
- (LanOuStudent *)queryStudentWithName:(NSString *)name age:(NSInteger)age;
// 查询全部学生
- (NSArray *)queryAllStudent;
@end
//
// SqLiteManager.m
// MySqlite
//
// Created by long on 15/9/15.
// Copyright (c) 2015年 WLong. All rights reserved.
//
#import "SqLiteManager.h"
@implementation SqLiteManager
+ (SqLiteManager *)shareManager
{
static SqLiteManager *manager = nil;
if (manager == nil) {
manager = [[SqLiteManager alloc] init];
}
return manager;
}
// 定义一个静态区指针 连接数据库 让数据库再程序结束后自动释放
static sqlite3 *db = nil;
- (sqlite3 *)openDB
{
// 说明已经打开数据库
if (db != nil) {
return db;
}
// 创建数据库
// 先搞路径
NSString *dbPath = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject] stringByAppendingPathComponent:@"Student.sqlite"];
NSLog(@"%@",dbPath);
// 如果没有Student.sqlite文件 会创建一个
int result = sqlite3_open(dbPath.UTF8String, &db);
if (result == SQLITE_OK) {
NSLog(@"打开数据库成功");
} else {