码迷,mamicode.com
首页 > 其他好文 > 详细

青春可长可短, 就看自己如何度过(亦或者如白驹过隙, 稍纵即逝 正所谓且行且珍惜)

时间:2014-12-26 22:54:10      阅读:244      评论:0      收藏:0      [点我收藏+]

标签:

          人生匆匆数十载, 说短也短, 说长也长, 看似挥霍不完的青春, 殊不知他就在你不经意间悄悄流逝, 所以时间还是贵在自己, 看自己如何度过, 如何选择, 无人可以左右你的人生, 唯一做的了主的就是你自己心中向往的那片天地!

         好久没有来过这里了, 好久也没有留下自己的脚印了, 每天都是匆匆忙忙的, 在几个月后我就要收获自己所奋斗后的成果了,我想说在这短短的几个月里真的可谓是起早贪黑, 不能说什么也没有学到,但是可以说的是知识点都已普及,付出的比任何时间都多, 也许花朵已在含苞待放, 就看你怎么施肥灌溉了!

         下面就是我的计划:在接下来的几个月里面我要把所有学过的东东从新再过一遍, 无论是有用的还是用的不多的都会再仔仔细细再看一遍,做到彻底的熟悉, 在这里学的是皮毛, 但是我一直都坚信什么事都怕深挖, 只要可以钻进去, 哪怕是皮毛, 你也可以将他看透, 嘿嘿 ,  革命尚未成功, 同志们仍需努力啊, 愿和我在同一起跑线或者比我快的朋友们一起坚守自己的信念, 不抛弃不放弃, 因为那些最后的成功才会属于我们! Come On!

          在今天的学习中我们学习了小型的数据库, 也许今天学习的东西并不多, 但是还是要和朋友们一起分享下, 让我们共同进步:

          下面附上我的代码以及课堂笔记:

//由于文件的读写, 归档, NSUserDefault, 做持久化存储的时候, 是一个覆盖的过程, 效率太低, 更多的时候使用数据库来做持久化存储
    //鉴于手机的硬件配置, 使用轻量级数据库(sqlite)
    //数据库内有很多张表, 每个表都有很多字段, 这些字段中用于做唯一标示的, 被称为主键
    
    //SQL, 结构化查询语句, 用于对数据进行操作(增,删,改,查)的语句
    //SQL语句不区分大小写
    //1.创建表格
    //create table 表名(字段名, 字段数据类型 是否是主键 是否为空 默认值是多少, ....)
    //student表为例,(ID, name, gender, photo)
    //create table "Student" ("ID" integer primary key not null, "name" text, "age" integer, "gender" text, "photo" blob)
    //2,插入数据
    //insert into 表明(字段名1, 字段名2, ....) values(值1, 值2 ...)
    //例如:insert into "Student" (name, gender, age) values ("赵卫东", "男", "20")
    //3.删除数据
    //delete from 表明 where字段名 = 值
    //例如:delete from"Student" where ID = "6"
    //4.修改数据
    //update 表名 set 字段名 = 值 where 字段名 = 值
    //例如:update "Student" set gender = "女" where ID = 5
    //5.查询数据
    //select 字段名 from 表明 where 字段名 = 值
    //例如:select name gender age from "Student" where ID = 3
    //例如:select * from Student where name = "小强"
    //例如:select * from Student

下面是Student类

#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>

@interface Student : NSObject

@property (nonatomic, assign) NSInteger ID;
@property (nonatomic, retain) NSString *name;
@property (nonatomic, retain) NSString *gender;
@property (nonatomic, assign) NSInteger age;
@property (nonatomic, retain) UIImage *photo;

@end

#import "Student.h"

@implementation Student

- (void)dealloc
{
    self.name = nil;
    self.photo = nil;
    self.gender = nil;
    [super dealloc];
}

- (NSString *)description
{
    return [NSString stringWithFormat:@"ID:%ld name:%@ gender:%@ age:%ld photo:%@", _ID, _name, _gender, _age, _photo];
}

同时还要创建数据库, 并主要管理数据库的打开和关闭

#import <Foundation/Foundation.h>
#import <sqlite3.h>//导入支持sqlite的框架

@interface DataBase : NSObject
//打开数据库, 并返回数据库指针
+ (sqlite3 *)openDB;

//关闭数据库
+ (void)closeDB;
#import "DataBase.h"

#define DATABASENAME @"DataBase.sqlite"

//创建全局的数据库指针
static sqlite3 *db = nil;

@implementation DataBase

//打开数据库, 并返回数据库指针
+ (sqlite3 *)openDB
{
    //判断数据库是否打开
    if (db == nil) {
        
        //创建文件管理类
        NSFileManager *file = [NSFileManager defaultManager];
        
        //document路径
        NSString *path = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) firstObject];
        NSLog(@"%@", path);
        //文件路径
        NSString *filePath = [path stringByAppendingPathComponent:DATABASENAME];
        
        //判断路径下是否有文件
        if ([file fileExistsAtPath:filePath]) {
            NSLog(@"文件存在");
        } else {
            //获取包中数据的路径
            NSString *boundlePath = [[NSBundle mainBundle] pathForResource:DATABASENAME ofType:nil];
            //把包中的数据库文件拷贝到document文件中
            NSError *error = nil;
           BOOL result = [file copyItemAtPath:boundlePath toPath:filePath error:&error];
            if (result) {
                NSLog(@"拷贝成功");
            } else {
                NSLog(@"%@", error);
            }
        }
        //打开数据库
        //参数1:文件路径
        //参数2:数据库指针, 如果文件路径下由数据库的话, 打开数据库, 并把数据库指针赋值
        sqlite3_open([filePath UTF8String], &db);
    }
    return db;
}

//关闭数据库
+ (void)closeDB
{
    sqlite3_close(db);
    db = nil;
}

再引入sqlite3.h框架的时候还要做2步, 首先进入工程文件中, 选中工程文件夹下的Build Phases, 然后再找到其下的子文件Link Binary With Libraries(1 item)

然后在选择"+"进行文件的添加, 如果所示

技术分享

这样基本上就可以到处数据, 进行增删改查了, 嘿嘿, 好了今天就到这了, 希望大家可以共同进步!

        新的一天就这样结束了, 在忙碌中不知不觉的溜走了, 也许这就是时间, 一天一天的过的真快, 不过至少我的一天是充实的, 是快乐的, 因为我学有所获, 有所得! 嘿嘿, 飘了, 明天再来和大家继续分享知识点哈, 为我们的青春一起加油!

 
 

青春可长可短, 就看自己如何度过(亦或者如白驹过隙, 稍纵即逝 正所谓且行且珍惜)

标签:

原文地址:http://www.cnblogs.com/dyx-wx/p/4187639.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!