Skip to content

Commit b6fb4db

Browse files
committed
FIX: 修改索引前缀删除数据的错误 其他语法修改
1 parent 41cdb51 commit b6fb4db

File tree

3 files changed

+75
-22
lines changed

3 files changed

+75
-22
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3+
<plist version="1.0">
4+
<dict>
5+
<key>IDESourceControlProjectFavoriteDictionaryKey</key>
6+
<false/>
7+
<key>IDESourceControlProjectIdentifier</key>
8+
<string>4D83443A-BDBA-4092-BBDA-F7F17BEC9883</string>
9+
<key>IDESourceControlProjectName</key>
10+
<string>YTKKeyValueStore_Swift</string>
11+
<key>IDESourceControlProjectOriginsDictionary</key>
12+
<dict>
13+
<key>4A981CE5EBB25D0F76C1CD8B5935247ECC95C653</key>
14+
<string>https://github.com/sgxiang/YTKKeyValueStore_Swift.git</string>
15+
</dict>
16+
<key>IDESourceControlProjectPath</key>
17+
<string>YTKKeyValueStore_Swift.xcodeproj</string>
18+
<key>IDESourceControlProjectRelativeInstallPathDictionary</key>
19+
<dict>
20+
<key>4A981CE5EBB25D0F76C1CD8B5935247ECC95C653</key>
21+
<string>../..</string>
22+
</dict>
23+
<key>IDESourceControlProjectURL</key>
24+
<string>https://github.com/sgxiang/YTKKeyValueStore_Swift.git</string>
25+
<key>IDESourceControlProjectVersion</key>
26+
<integer>111</integer>
27+
<key>IDESourceControlProjectWCCIdentifier</key>
28+
<string>4A981CE5EBB25D0F76C1CD8B5935247ECC95C653</string>
29+
<key>IDESourceControlProjectWCConfigurations</key>
30+
<array>
31+
<dict>
32+
<key>IDESourceControlRepositoryExtensionIdentifierKey</key>
33+
<string>public.vcs.git</string>
34+
<key>IDESourceControlWCCIdentifierKey</key>
35+
<string>4A981CE5EBB25D0F76C1CD8B5935247ECC95C653</string>
36+
<key>IDESourceControlWCCName</key>
37+
<string>YTKKeyValueStore_Swift</string>
38+
</dict>
39+
</array>
40+
</dict>
41+
</plist>

Diff for: YTKKeyValueStore_Swift/YTKKeyValueStore_Swift.swift

+34-22
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ class YTKKeyValueItem_Swift:NSObject{
2424
class YTKKeyValueStore_Swift: NSObject {
2525

2626
//文件夹路径
27-
let PATH_OF_DOCUMENT : NSString = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.UserDomainMask, true)[0] as NSString
27+
let PATH_OF_DOCUMENT : String = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)[0] as String
2828

2929
private var dbQueue : FMDatabaseQueue?
3030

@@ -39,18 +39,28 @@ class YTKKeyValueStore_Swift: NSObject {
3939
let DELETE_ITEMS_WITH_PREFIX_SQL = "DELETE from %@ where id like ? "
4040

4141

42-
class func checkTableName(tableName : NSString!)->Bool{
43-
if(tableName.rangeOfString("").location != NSNotFound){
44-
println("error, table name: %@ format error",tableName)
42+
/**
43+
检查名字是否合法
44+
45+
:param: tableName 表名
46+
47+
:returns: 合法性
48+
*/
49+
class func checkTableName(tableName : String!)->Bool{
50+
if find(tableName, " ") != nil{
51+
println("error, table name: \(tableName) format error")
4552
return false
4653
}
4754
return true
4855
}
4956

57+
//MARK: - 初始化
58+
5059
override init(){
5160
super.init()
5261
self.setupDB(DEFAULT_DB_NAME)
5362
}
63+
5464
init(dbName : String!){
5565
super.init()
5666
self.setupDB(dbName)
@@ -64,6 +74,9 @@ class YTKKeyValueStore_Swift: NSObject {
6474
dbQueue = FMDatabaseQueue(path: dbPath)
6575
}
6676

77+
78+
//MARK: - 数据库操作
79+
6780
/**
6881
创建表单
6982

@@ -79,7 +92,7 @@ class YTKKeyValueStore_Swift: NSObject {
7992
result = db.executeUpdate(sql, withArgumentsInArray:nil)
8093
})
8194
if !result! {
82-
println("error, failed to create table: %@",tableName)
95+
println("error, failed to create table: \(tableName)")
8396
}
8497
}
8598

@@ -98,7 +111,7 @@ class YTKKeyValueStore_Swift: NSObject {
98111
result = db.executeUpdate(sql, withArgumentsInArray:nil)
99112
})
100113
if !result!{
101-
println("error, failed to clear table: %@",tableName)
114+
println("error, failed to clear table: \(tableName)")
102115
}
103116
}
104117

@@ -208,8 +221,8 @@ class YTKKeyValueStore_Swift: NSObject {
208221
*/
209222
func getStringById(stringId : String! , fromTable tableName : String!)->String?{
210223
let array : AnyObject? = self.getObjectById(stringId, fromTable: tableName)
211-
if let result = array as? NSArray {
212-
return result[0] as? String
224+
if let result = array as? [String]{
225+
return result[0]
213226
}else{
214227
return nil
215228
}
@@ -222,7 +235,7 @@ class YTKKeyValueStore_Swift: NSObject {
222235
:param: numberId 索引
223236
:param: tableName 表单名
224237
*/
225-
func putNumber(number : NSNumber! , withId numberId : String! , intoTable tableName : String!){
238+
func putNumber(number : CGFloat! , withId numberId : String! , intoTable tableName : String!){
226239
self.putObject([number], withId: numberId, intoTable: tableName)
227240
}
228241

@@ -234,10 +247,10 @@ class YTKKeyValueStore_Swift: NSObject {
234247

235248
:returns: 数字
236249
*/
237-
func getNumberById(numberId : String! , fromTable tableName : String!)->NSNumber?{
250+
func getNumberById(numberId : String! , fromTable tableName : String!)->CGFloat?{
238251
let array : AnyObject? = self.getObjectById(numberId, fromTable: tableName)
239-
if let result = array as? NSArray {
240-
return result[0] as? NSNumber
252+
if let result = array as? [CGFloat] {
253+
return result[0]
241254
}else{
242255
return nil
243256
}
@@ -300,7 +313,7 @@ class YTKKeyValueStore_Swift: NSObject {
300313
result = db.executeUpdate(sql, withArgumentsInArray:[objectId])
301314
})
302315
if !result! {
303-
println("error, failed to delete time from table: %@", tableName)
316+
println("error, failed to delete time from table: \(tableName)")
304317
}
305318
}
306319

@@ -314,14 +327,13 @@ class YTKKeyValueStore_Swift: NSObject {
314327
if !YTKKeyValueStore_Swift.checkTableName(tableName){
315328
return
316329
}
317-
var stringBuilder = NSMutableString()
330+
var stringBuilder = ""
318331
for objectId in objectIdArray{
319332
var item = " '\(objectId)' "
320-
if stringBuilder.length == 0 {
321-
stringBuilder.appendString("item")
333+
if stringBuilder.isEmpty {
334+
stringBuilder += "item"
322335
}else{
323-
stringBuilder.appendString(",")
324-
stringBuilder.appendString(item)
336+
stringBuilder += ",\(item)"
325337
}
326338
}
327339
let sql = NSString(format: DELETE_ITEMS_SQL, tableName,stringBuilder)
@@ -330,7 +342,7 @@ class YTKKeyValueStore_Swift: NSObject {
330342
result = db.executeUpdate(sql, withArgumentsInArray:nil)
331343
})
332344
if !result!{
333-
println("error, failed to delete items by ids from table: %@",tableName)
345+
println("error, failed to delete items by ids from table: \(tableName)")
334346
}
335347
}
336348

@@ -345,13 +357,13 @@ class YTKKeyValueStore_Swift: NSObject {
345357
return
346358
}
347359
let sql = NSString(format: DELETE_ITEMS_WITH_PREFIX_SQL, tableName)
348-
let prefixArgument = NSString(format: "%@%%", objectIdPrefix)
360+
let prefixArgument = "\(objectIdPrefix)%"
349361
var result : Bool?
350362
dbQueue?.inDatabase({ (db) -> Void in
351-
result = db.executeUpdate(sql, withArgumentsInArray:nil)
363+
result = db.executeUpdate(sql, withArgumentsInArray:[prefixArgument])
352364
})
353365
if !result!{
354-
println("error, failed to delete items by id prefix from table: %@",tableName)
366+
println("error, failed to delete items by id prefix from table: \(tableName)")
355367
}
356368
}
357369

0 commit comments

Comments
 (0)