خطا هنگام حذف رکورد از لایبری SQLITE
با سلام و احترام
من از لایبری sqlite آقای کاشی زاده استفاده میکنم و خیلی هم عالیه و کارمو راه میندازه ولی برای حذف رکورد یه خطایی برخورد کردم که فکر میکنم بخاطر اشتباه در کوری منه
db.executeQuery(sqlStr: "DELETE FROM tableName WHERE id=\(letId)")
خطایی که میده اینه
Database Error -> During: SQL Prepare
-> Code: 1 - SQL error or missing database
-> Details: no such function: Optional
let result = db.execute(sql:"DELETE FROM tableName WHERE id=\(letId)")
مشکل از من بود چون متغییر رو باید تبدیل میکردم به INT
db.executeQuery(sqlStr: "DELETE FROM tableName WHERE id=\(letId as! Int)")
لزوما ربطی به تغییر به Int نداشته مشکلتون. شاید از قبل هم Int بوده ولی Optional ـ Int بوده. که توی این خط مشخص شده:
-> Details: no such function: Optional
کاری که شما کردین این ـ که متغیر رو Force Cast کردین به Int و مشکلتون حل شده. احتمالا به این حالت هم مشکلتون حل میشده:
db.executeQuery(sqlStr: "DELETE FROM tableName WHERE id=\(letId!)")
من يه مشكل ديگه هم دارم كه توي پست جديد مجددا قرار ميدم
وقتي كاراكتر فارسي ثبت ميكنم در زمان فراخواني در تيبل ويو نشون نميده ولي وقتي انگليسي ثبت ميشه نشون ميده
البته در سيموليتور اينطور نيست و همه چيز درسته ولي در آيفون اين اتفاق ميفته
به خود فايل db در آيفون چطور ميشه دسترسي داشت ؟ تا ببينم كلا داده اي ذخيره شده يا نه و در مرحله بعد ببينم چرا در تيبل ويو نشون نميده؟
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .