Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/robertohuertasm/SQLite4Unity3d
SQLite made easy for Unity3d
https://github.com/robertohuertasm/SQLite4Unity3d
Last synced: 5 days ago
JSON representation
SQLite made easy for Unity3d
- Host: GitHub
- URL: https://github.com/robertohuertasm/SQLite4Unity3d
- Owner: robertohuertasm
- License: mit
- Created: 2014-10-10T08:11:07.000Z (about 10 years ago)
- Default Branch: master
- Last Pushed: 2019-05-25T09:01:13.000Z (over 5 years ago)
- Last Synced: 2024-10-30T00:33:04.400Z (13 days ago)
- Language: C#
- Homepage:
- Size: 131 MB
- Stars: 1,287
- Watchers: 90
- Forks: 265
- Open Issues: 48
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[![Average time to resolve an issue](http://isitmaintained.com/badge/resolution/codecoding/SQLite4Unity3d.svg)](http://isitmaintained.com/project/codecoding/SQLite4Unity3d "Average time to resolve an issue")
[![Percentage of issues still open](http://isitmaintained.com/badge/open/codecoding/SQLite4Unity3d.svg)](http://isitmaintained.com/project/codecoding/SQLite4Unity3d "Percentage of issues still open")# What's this?
When I started with Unity3d development I needed to use SQLite in my project and it was very hard to me to find a place with simple instructions on how to make it work. All I got were links to paid solutions on the Unity3d's Assets Store and a lot of different and complicated tutorials.At the end, I decided that there should be a simpler way and I created **SQLite4Unity3d**, a plugin that helps you to use SQLite in your Unity3d projects in a clear and easy way and works in **iOS, Mac, Android and Windows** projects.
It uses the great [sqlite-net](https://github.com/praeclarum/sqlite-net) library as a base so you will have **Linq besides sql**. For a further reference on what possibilities you have available with this library I encourage you to visit [its github repository](https://github.com/praeclarum/sqlite-net).
*Note: _SQLite4Unity3d uses only the synchronous part of sqlite-net, so all the calls to the database are synchronous._
If you want to know more about why I created this plugin you can read more [here](http://www.codecoding.com/sqlite4unity3d-using-sqlite-net-library-and-unity3d-free-edition/).
# The fast track
All you have to do to start using it in your project:1. [Download this zip](https://github.com/codecoding/SQLite4Unity3d/raw/master/SQLite4Unity3d.zip), extract its content and **copy the resulting folder to your Assets/Plugins folder**. It contains the dlls that Unity3d will need to access sqlite.
2. **Copy the SQLite.cs** file into your scripts folder.
3. Don’t forget to **copy your SQLite database file in your Assets/StreamingAssets folder if you’re shipping one**.
4. **You’re done!** Now you can get access to your database using sqlite-net. ;P# Example
If you want to try it I've uploaded a small example that you will be able to find in the "Example" folder. Download the folder and open it with Unity3d to give it a try. It contains classes that will help you to start.## Android particularities
Android configuration and deployment is very straight forward. Take a look at the **following video** if you want to get a picture on how to proceed:# iOS particularities
As you may know **iOS doesn't allow JIT compilation** so, generally speaking, you will have to be very careful when you use **reflection** in your code. For a more deeper explanation of this issue please refer to Google but making it short: you cannot create dynamic objects using reflection. How is this affecting SQLite4Unity3d? Well, prior to this version you couldn't use very complicated queries. Now, **for basic queries you will have iOS support**. In case you stumble uppon a JIT compilation error it's time to use the old sql syntax.Check this video to know how to proceed with iOS deployment:
# Windows particularities
In general you won't find any issues with Android and iOS. For **Windows versions**, please take a look at the **the video below** for more details on how to proceed:# Acknowledgements
This project is based on the work of:- [Sqlite-net](https://github.com/praeclarum/sqlite-net) - License: custom - see https://github.com/praeclarum/sqlite-net/blob/master/license.md