- Dokumentacja
- Funkcje serwera
- dbConnect
Funkcja
dbConnect
Otwiera połączenie z bazą SQLite (plik w folderze zasobu) albo MySQL.
Składnia
element dbConnect(string dbType, string target [, string username = nil, string password = nil, string/table options = nil])Argumenty
dbTypestring"sqlite"albo"mysql".targetstring- SQLite: ścieżka pliku w zasobie albo
":memory:". MySQL: nazwa połączenia zdatabases.jsonalbo"dbname=...;host=...;port=...". usernamestring, opcjonalny = nil- Użytkownik MySQL. Pomiń przy połączeniu nazwanym.
passwordstring, opcjonalny = nil- Hasło MySQL.
optionsstring/table, opcjonalny = nil- Dodatkowe opcje MySQL.
Zwraca
Uchwyt połączenia albo false.
Przykład
local db = dbConnect("sqlite", "gracze.db")
dbExec(db, "CREATE TABLE IF NOT EXISTS gracze (serial TEXT PRIMARY KEY, kasa INTEGER)")
local mysql = dbConnect("mysql", "glowna")
Uwagi
Bezpieczne hasła do bazy. Połączenie nazwane (dbConnect("mysql", "glowna")) bierze dane z pliku databases.json serwera, który może być zaszyfrowany. Hasło nie pojawia się wtedy w kodzie zasobu, a serwer pozwala na to połączenie tylko zasobom z listy resources.
Ścieżka SQLite nie wyjdzie poza zasób. Plik bazy zawsze leży w folderze zasobu, próba wyjścia wyżej jest odrzucana.
Zobacz też
dbQueryWysyła zapytanie z wynikiem. Wynik odbierasz przezdbPollalbo w funkcji zwrotnej, która dostanie uchwyt zapytania.dbExecWykonuje zapytanie, które nie zwraca wyniku (INSERT, UPDATE, CREATE). Argumenty wstawiasz w miejsce znaków?.dbPollOdbiera wynik zapytania zdbQuery: wiersze, liczbę zmienionych wierszy i ID ostatnio wstawionego. Jeśli chcesz po prostu wykonać zapytanie i dostać wiersze, prościej użyćdbFetch.