1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/huntlabs-hunt-database

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

База данных

Слой абстракции базы данных для языка программирования D, поддерживает PostgreSQL, MySQL и SQLite.

Пример

import std.stdio;

import hunt.database;

void main()
{
    writeln("запускаем демонстрацию MySQL базы данных.");

    auto db = new Database("mysql://root:123456@localhost:3306/test?charset=utf8mb4");

    int result = db.execute(`INSERT INTO user(username) VALUES("test")`);
    writeln(result);

    foreach(row; db.query("SELECT * FROM user LIMIT 10"))
    {
        writeln(row["username"]);
    }

    db.close();
}

Используйте DatabaseOption для создания объекта Database.

auto options = new DatabaseOption("mysql://root:123456@localhost:3306/test");
options.setMaximumConnection(5);

auto db = new Database(options);

db.execute("SET NAMES utf8");

API

  • int Database.execute(string sql) — возвращает количество результатов выполнения.
int result = db.execute('INSERT INTO user(username) VALUES("Brian")');
// если при выполнении возникает ошибка, db генерирует исключение DatabaseException
  • ResultSet Database.query(sql) — возвращает объект ResultSet для запроса (SELECT).
ResultSet rs = db.query("SELECT * FROM user LIMIT 10");
  • Statement Database.prepare(sql) — создаёт подготовленный объект Statement.
Statement stmt = db.prepare("SELECT * FROM user where username = :username and age = :age LIMIT 10");
  • Statement.setParameter(param, value) — связывает значение параметра с :param для sql.
stmt.setParameter("username", "viile");
stmt.setParameter("age", 18);
  • ResultSet Statement.query() — возвращает ResultSet.
ResultSet rs = stmt.query();
foreach(row; rs)
{
    writeln(row["username"]);
}
  • Row Statement.fetch() — возвращает строку Row.
Row row = stmt.fetch();
writeln(row["username"]);
  • int Statement.execute() — возвращает статус выполнения для подготовленного объекта Statement.
int result = stmt.execute();
  • Statement.lastInsertId() — для выполнения insert sql возвращает lastInsertId.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Описание недоступно Развернуть Свернуть
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/huntlabs-hunt-database.git
git@api.gitlife.ru:oschina-mirror/huntlabs-hunt-database.git
oschina-mirror
huntlabs-hunt-database
huntlabs-hunt-database
master