中文版本请参看这里
WCDB es un marco de base de datos móvil eficiente , completo y fácil de usar utilizado en la aplicación WeChat. Se basa en SQLite y SQLCipher, y admite cinco idiomas: C ++, Java, Kotlin, Swift y Objective-C.
Con ORM y Winq, puede insertar, actualizar, consultar y eliminar objetos de la base de datos en un código de línea:
// 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 ];A través de la capa de marco y la optimización de la fuente de SQLCIPHER, WCDB tiene un rendimiento más eficiente.
WCDB resume los problemas comunes en la práctica para proporcionar una experiencia de desarrollo más completa para el desarrollo de la base de datos:
WCDB tiene interfaces en cinco idiomas: C ++, Java, Kotlin, Swift y OBJC. Las interfaces en diferentes idiomas comparten la misma lógica subyacente. La estructura de código de WCDB se muestra en la figura a continuación:
Bajo dicha arquitectura, WCDB en diferentes idiomas puede tener la misma estructura de interfaz y capacidades de interfaz. En un proyecto, puede escribir código de base de datos en diferentes idiomas con un WCDB. La lógica de la base de datos en diferentes idiomas no entrará en conflicto. Algunas interfaces globales, como el monitoreo de errores, pueden funcionar en la lógica de la base de datos en diferentes idiomas al mismo tiempo.
Los siguientes wikies contienen las instrucciones detalladas sobre la construcción y la instalación de WCDB.
Los tutoriales de diferentes idiomas se pueden encontrar a continuación:
Si está interesado en contribuir, consulte el [contribuyente.md], también únase a nuestro plan Tencent OpenSource.
开发者: 深圳市腾讯计算机系统有限公司
WCDB 个人信息保护规则