中文版本请参看这里
يعد WCDB إطارًا فعالًا للكفاءة في قاعدة بيانات الهاتف المحمول المستخدم في تطبيق WeChat. إنه يعتمد على SQLite و SQLCipher ، ويدعم خمس لغات: C ++ ، Java ، Kotlin ، Swift و Objective-C.
مع ORM و WINQ ، يمكنك إدراج الكائنات وتحديثها والاستعلام وحذفها من قاعدة البيانات في رمز سطر واحد:
// C++
database.insertObjects<Sample>(Sample( 1 , " text " ), myTable);
database.updateRow( " text2 " , WCDB_FIELD(Sample::content), myTable, WCDB_FIELD(Sample::id) == 1 );
auto objects = database.getAllObjects<Sample>(myTable, WCDB_FIELD(Sample::id) > 0 );
database.deleteObjects(myTable, WCDB_FIELD(Sample::id) == 1 ); // Java
database . insertObject ( new Sample ( 1 , "text" ), DBSample . allFields (), myTable );
database . updateValue ( "text2" , DBSample . content , myTable , DBSample . id . eq ( 1 ));
List < Sample > objects = database . getAllObjects ( DBSample . allFields (), myTable , DBSample . id . gt ( 0 ));
database . deleteObjects ( myTable , DBSample . id . eq ( 1 )); // Kotlin
database.insertObject< Sample >( Sample ( 1 , " text " ), DBSample .allFields(), myTable)
database.updateValue( " text2 " , DBSample .content, myTable, DBSample .id.eq( 1 ))
val objects = database.getAllObjects< Sample >( DBSample .allFields(), myTable, DBSample .id.gt( 0 ))
database.deleteObjects(myTable, DBSample .id.eq( 1 ))// Swift
try database . insert ( Sample ( id : 1 , content : " text " ) , intoTable : myTable )
try database . update ( table : myTable ,
on : Sample . Properties . content ,
with : " text2 "
where : Sample . Properties . id == 1 )
let objects : [ Sample ] = try database . getObjects ( fromTable : myTable ,
where : Sample . Properties . id > 0 )
try database . delete ( fromTable : myTable where : Sample . Properties . id == 1 ) // Objc
[database insertObject: sample intoTable: myTable];
[database updateTable: myTable
setProperty: Sample.content
toValue: @" text2 "
where: Sample. id == 1 ];
NSArray * objects = [database getObjectsOfClass: Sample.class
fromTable: myTable
where: Sample. id > 0 ];
[database deleteFromTable: myTable where: Sample. id == 1 ];من خلال الطبقة الإطارية ومصدر SQLCipher ، يتمتع WCDB بأداء أكثر كفاءة.
يلخص WCDB المشكلات الشائعة في الممارسة العملية لتوفير تجربة تطوير أكثر اكتمالا لتطوير قاعدة البيانات:
يحتوي WCDB على واجهات بخمس لغات: C ++ و Java و Kotlin و Swift و OBJC. تشترك الواجهات بلغات مختلفة في نفس المنطق الأساسي. يظهر هيكل رمز WCDB في الشكل أدناه:
في ظل هذه العمارة ، يمكن أن يكون لـ WCDB بلغات مختلفة نفس بنية الواجهة وقدرات الواجهة. في مشروع واحد ، يمكنك كتابة رمز قاعدة البيانات بلغات مختلفة مع WCDB واحد. لن يتعارض منطق قاعدة البيانات بلغات مختلفة. يمكن أن تعمل بعض الواجهات العالمية مثل مراقبة الأخطاء على منطق قاعدة البيانات بلغات مختلفة في نفس الوقت.
تحتوي Wikies التالية على إرشادات مفصلة حول بناء وتثبيت WCDB.
يمكن العثور على دروس للغات المختلفة أدناه:
إذا كنت مهتمًا بالمساهمة ، تحقق من [المساهمة.
开发者: 深圳市腾讯计算机系统有限公司
WCDB 个人信息保护规则