Доступ к готовым решениям

Переход в группу "Пользователь"

300.00
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

FAQ Среда MySQL

q0b3rMAN

Изучающий
Пользователь
Регистрация
19 Фев 2011
Сообщения
111
Лучшие ответы
0
Репутация
139
Среда MySQL.
В данном F.A.Q. мы более близко познакомимся с MySQL.

SQL запросы.
Structured Query Language - язык структурированных запросов.
Это специальный язык, который позволяет нам управлять данными в реляционных базах данных.
Следовательно, не сложно будет понять что именно его и будем использовать для управления.

Знакомимся с операторами:

Операторы определения данных:
CREATE - создает объект БД
ALTER - изменяет объект
DROP - удаляет объект

Операторы манипуляции данными:
SELECT - считывает данные
INSERT - добавляет новые данные
UPDATE - изменяет существующие данные
DELETE - удаляет данные

Операторы определения доступа к данным:

GRANT - предоставляет пользователю разрешения на определенные операции с объектом
REVOKE - отзывает ранее выданные разрешения
DENY - задает запрет, имеющий приоритет над разрешением

Операторы управления транзакциями:
COMMIT - применяет транзакцию.
ROLLBACK - откатывает все изменения, сделанные в контексте текущей транзакции.
SAVEPOINT - делит транзакцию на более мелкие участки.


Итак, как же мы работаем.
Начиная с версии 0.2, мультиплеер поддерживает возможность создания плагинов, расширяющих возможности сервера. Наиболее популярными являются плагины для работы с СУБД MySQL, а именно плагин от G-sTyLeZzZ's.
Сервер после определения БД, может посылать запросы MySQL серверу, который их обрабатывает.

Функции плагина:

samp_mysql_query(query[])
Отправка SQL запроса, пример использования:
PHP:
new string[256];
format(string, sizeof(string), "SELECT `password` FROM `users` WHERE `username` = '%s'", PlayerName(playerid));
mysql_query(string);//посылает запрос лежащий в переменной string
samp_mysql_connect(server[], user[], password[])
Соединение с MySQL сервером, пример использования:
PHP:
mysql_connect(SQL_HOST, SQL_USER, SQL_DB, SQL_PASS))//подключаемся с массивами
//где SQL_HOST, SQL_USER, SQL_DB, SQL_PASS = IP MySQL сервера, юзер, пароль, название БД.
samp_mysql_ping()
Пингует MySQL сервер, обычно используется для проверки соединился или нет, пример использования:
PHP:
    if(mysql_ping() == 1)//проверка подключились мы к MySQL
    {
        printf("[MYSQL]: Подключение к `%s` выполнено!", SQL_DB);
    } 
    else
    {
        printf("[MYSQL]: [ERROR]: Подключение к `%s` не выполнено", SQL_DB);
    }
samp_mysql_free_result()
Сбрасывает полученный результат от запроса, пример использования:
PHP:
new string[256];
format(string, sizeof(string), "SELECT `password` FROM `users` WHERE `username` = '%s'", PlayerName(playerid));
mysql_query(string);//посылает запрос лежащий в переменной string 
samp_mysql_free_result(string) //сброс
samp_mysql_close()
Закрывает соединение с сервером MySQL, пример использования:
PHP:
mysql_connect(SQL_HOST, SQL_USER, SQL_DB, SQL_PASS))//подключаемся с массивами
//где SQL_HOST, SQL_USER, SQL_DB, SQL_PASS = IP MySQL сервера, юзер, пароль, название БД.
samp_mysql_close() //отключение от сервера
samp_mysql_num_rows()
Возвращает число строк, пример использования:
PHP:
new stroki[256];
samp_mysql_num_rows(stroki);
{
printf(" Число строк `%s` ", stroki);
return 1;
}
samp_mysql_num_field()
Возвращает количество полей в таблице, пример использования:
PHP:
new line[1024];
new fieldvalue[128];
samp_mysql_fetch_row(line);
samp_mysql_get_field("user_name", field);
printf("%s ", field);

samp_mysql_store_result()

Подготавливает полученный результат, пример использования:
PHP:
new string[256];
new result[256];
format(string, sizeof(string), "SELECT `password` FROM `users` WHERE `username` = '%s'", PlayerName(playerid));
mysql_query(string);  
{
samp_mysql_store_result(result)
{
printf("`%s` ", result);
}
return 0;
}
 
Последнее редактирование:
Сверху Снизу