[Include] MySQL Prepared Stataments
#1

MySQL-Stataments
Stataments para MySQL no SA-MP.
Quote:
Apуs uma perda de dados, a parte do cуdigo que se destinava a leitura foi perdida, portanto este agora apenas escreve dados, nгo lк.

Funзхes
PHP Code:
// Prepared statements
Statement:stmt_prepare(ConnectionHandlequery[])
bool:stmt_execute(&Statement:statementcallback ""auto_free_result true)
stmt_bind_value(&Statement:statementparamDataType:type, ...)
stmt_close(&Statement:statement
Quote:
stmt_prepare
  • Prepara um statement. Coloque pontos de interrogaзгo como espaзos reservados para valores a serem inseridos.[/b]
  • Parametros:
    • ConnectionHandle: ID da conexгo com o banco de dados.
    • query[]: Query a ser preparada.
  • Retorno:
    • - ID do Statament criado.
  • Notas:
    • Nгo coloque aspas em torno dos pontos de interrogaзгo.
Quote:
stmt_bind_value
  • Definir um valor ao ponto de interrogaзгo.
  • Parametros:
    • &Statement:statement: Statament em que o valor serб designado.
    • param: Numero do parametro a alterar.
    • DataType:type: Tipo de dado a ser inserido.
    • ...: Dado a inserir.
  • Retorno:
    • - Verdadeiro caso obtenha sucesso, falso caso contrбrio.
  • Notas:
    • Primeiro ponto de interrogaзгo й param 0, segundo й 1, etc.
Quote:
stmt_close
  • Fecha um Statament.
  • Parametros:
    • &Statement:statement: Statament que serб fechado.
  • Retorno:
    • - Verdadeiro caso obtenha sucesso, falso caso contrбrio.
Quote:
bool:stmt_execute
  • Executa o statement. Caso a callback seja valida irб chama-la
  • Parametros:
    • &Statement:statement: Statament que serб executado.
    • callback[]: Callback que irar ser chamada apуs a query ser realizada.
  • Retorno:
    • - Verdadeiro caso obtenha sucesso, falso caso contrбrio.
Inserindo dados
PHP Code:
// Prepara o statement
new Statement:stmt stmt_prepare(Conection"INSERT INTO mytable VALUES(?, ?, ?)");
// Seta os valores nas interrogaзхes (Primeiro й 0, segundo й 1, etc...)
stmt_bind_value(stmt0TYPE_FLOAT 123.456);
stmt_bind_value(stmt1TYPE_INT   1234567);
stmt_bind_value(stmt2TYPE_STRING"there's no need to \"escape\" anything!");
new array[] = {
12345};
stmt_bind_value(stmt2TYPE_ARRAY, array, sizeof(array));
// Executa o statement
stmt_execute(stmt);
// Agora fecha-o
stmt_close(stmt); 
Crйditos
  • Slice criaзгo original do SQLitei.
  • Dayvison transcriзгo de parte do cуdigo para MySQL.
Download
Github
Reply
#2

Muito bacana essa adaptaзгo que vocк fez...

Nostalgia, essa lib e a forma de usar ela me lembrou bastante quando usava jdbc prepared statements.


parabйns
Reply
#3

Belo trabalho-
Reply
#4

Nao e a melhor forma. Й funcional sim porйm nгo sei se tu sabe jб ta sendo adicionado preparated statments no prуprio plugin de mysql na versгo r40.

Epa como estudo o que aprendeste й bom e й sempre bom de isso.
Reply
#5

Quote:
Originally Posted by PT
View Post
Nao e a melhor forma. Й funcional sim porйm nгo sei se tu sabe jб ta sendo adicionado preparated statments no prуprio plugin de mysql na versгo r40.

Epa como estudo o que aprendeste й bom e й sempre bom de isso.
Nгo sei qual seria a outra melhor forma, ja que nгo foi feita ainda, e estб bom pelo que li no cуdigo estб muito bem feita.

Fora que, estб sendo feito para a versгo r40 a mais de 1 ano ja, eu nгo posso esperar atй lб mesmo assim entendo.

Quote:
Originally Posted by Day_
View Post
Notas
  • Pode ser que um dia venha a ser nativamente pelo plugin statament segundo aqui, isto й apenas para "quebrar o galho" atй la.
Reply
#6

Link dead?
Reply
#7

Quote:
Originally Posted by Day_
View Post
Fora que, estб sendo feito para a versгo r40 a mais de 1 ano ja, eu nгo posso esperar atй lб mesmo assim entendo.
Ja nao vai ser feito isso. Ja deram a confirmaзгo...

Repoe ai o link por favor..
Reply
#8

Nem tinha visto isto, kk um amigo pediu entгo eu repuz, porйm eu estava ultilizando apenas uma parte do cуdigo(escrever) entгo retirei a outra(Ler), talvez depois eu refaзa ela, porйm o que ja tem pronto upei no github desta vez.
https://github.com/Dayvison/MySQL-Stataments
Reply
#9

Muito bacana, estava utilizando este mйtodo no projeto do meu UCP, muito legal ver o MYSQL ganhando cada vez mais espaзo no SA:MP.
Reply
#10

- Parabйns, й уtimo ver Prepared Stataments no Pawn! trabalho muito com isso no PHPOO em alguns projetos.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)