[Tutorial] SQLite: Criando um banco de dados.
#1

Como vocкs jб viram, eu postei a primeira parte do tutorial de SQLite, algumas funзхes que serгo muito usadas por vocкs, e hoje irei mostrar para vocкs a criaзгo do banco de dados, que й muito simples. Hoje existe vбrios programas para a manipulaзгo de um banco de dados, porйm neste tutorial nгo utilizaremos nenhum deles, faremos tudo a mгo para que vocк grave os conceitos e aprenda mais fбcil, depois se quiser pode sim, baixar um programa porque isso vai facilitar muito a sua vida. Jб vou avisando que nуs faremos nosso banco de dados, sem a utilizaзгo de qualquer programa, mas claro se vocк quiser vocк pode baixar, tem muitos por ai um deles й o Sqlite Browser Entгo mгos a obra.
  • Conhecendo oque vamos usar
  • Aplicando no SA-MP
  • Resultado final
Conhecendo oque vamos usar:
Iremos fazer uma conexгo com a db, e depois usaremos a funзгo db_query para criarmos nossas tabelas e colunas.

Aplicando no SA-MP:
Para criar um banco de dados pelo SA-MP, й muito fбcil.. Como vocкs viram no outro tutorial(ou nгo) existe clausulas para inserir, atualizar, deletar(acho que nгo cheguei a passar essa) e selecionar. E tambйm existe um para criar uma tabela!

Para criar a um banco de dados, vocк precisarб ter uma conexгo com ele, mesmo que ele nгo exista e para fazer isso, como eu jб havia comentado no outro tуpico й muito fбcil. Basta usar a funзгo db_open, seguido do nome da db. Veja:
PHP код:
new DB:Connect;
public 
OnGameModeInit()
{
      
Connect db_open("teste.db");
      return 
1;

Bom, e agora como eu crio minha tabela? Fбcil, primeiramente vocк deverб colocar a clausula que faz essa operaзгo, estou me referindo a CREATE TABLE IF NOT EXISTS que traduzindo pro portuguкs ficaria Criar tabela se nгo existir. Alйm dessa clausula, precisamos dar um nome para a tabela que estaremos criando. Este deverб ficar entre aspas invertidas(acho que esse й o nome), ou seja dessa maneira:
PHP код:
CREATE TABLE IF NOT EXISTS `teste
Certo й sу isso?
Nгo. Agora precisamos definir as colunas que essa tabela terб, essas deverгo ficar dentro de parenteses () seguidos de aspas invertidas com o nome da coluna e o seu tipamento(tipo), ou seja se ela receberб valores inteiros(INTEGER), ou de texto(TEXT), etc, sem contar outras configuraзхes que a coluna poderб ter, ou seja se ela poderб ser nula, ou se ela й auto incrementбvel, etc, veja como й muito simples.
PHP код:
CREATE TABLE IF NOT EXISTS `teste` (`coluna1INTEGER); 
Vamos agora ver outro exemplo..
PHP код:
CREATE TABLE IF NOT EXISTS `teste2` (`coluna1TEXT NOT NULL); 
Bom, й sу isso?
Nгo porque isso й somente a clausula do cуdigo, mas para que funcione perfeitamente precisaremos utilizar uma funзгo jб conhecida por vocк(veja o outro tutorial caso nгo saiba do que estou falando), a db_query. Veja como й fбcil:
PHP код:
db_query(Connect"CREATE TABLE IF NOT EXISTS `teste2` (`coluna1` TEXT NOT NULL);"); 
Resultado final:
Veja como ficou nosso banco de dados depois que ligamos nosso gamemode.


Ficou como й super simples? Espero que tenham gostado, e tambйm que nгo haja nenhum erro.. Pelo que eu vi, nгo hб mais se houver me alertem para eu corrigir.
Reply
#2

Tutorial muito bom, bem explicado Hard, eu nгo sabia nada de SQLite ( por achar que era muito difнcil ) mas li os seus tutoriais e vi que e bem fбcil, ta de parabйns seu dlз.
Reply
#3

Belo tutorial e organizaзгo de tуpico tambйm .

+rep
Reply
#4

Estб explicando muito mal a sintaxe SQL. Nгo й uma boa prбtica criar tabelas sem uma coluna PRIMARY KEY.
Reply
#5

To aprendendo kkk...
Mas, faltou coisas, como explicar pra que serve "TEXT NOT NULL" sei que quer dizer que o "texto nгo й nulo", mas pra que vai servir na tabela e talz.
Aquela imagem abaixo, vocк a abriu como?Aonde vejo isso?
Falta certas coisas que acho que vocк deve levar em consideraзгo, que, pessoas que nгo sabem nem o bбsico de SQLite estгo/estarгo lendo este tutorial.

Abraзos.
Vou tentar...

@Edit: alйm do mais, estб gerando 2 warnings, (80) : warning 213: tag mismatch || (81) : warning 213: tag mismatch. Linhas:
PHP код:
    Connect db_open("teste.db");
    
db_query(Connect"CREATE TABLE IF NOT EXISTS `teste` (`Coluna1` TEXT NOT NULL);"); 
PS: Analisando os 2 tutoriais, notei, que no primeiro vocк criou new DB:Connect; no segundo, vocк deixou a tag de lado, isso causou os warnings
Reply
#6

Vocк ensina bem hehehe o ъnico problema й que quando o tutorial ta bom demais ele acaba. Falta mais informaзхes ai. Mostra mais exemplos e funзхes. Mostra como salva uma posiзгo e depois getar para o player dar spawn.. No mais bom tutorial.
Reply
#7

otimo.
Reply
#8

Certo, eu acabei me esquecendo de algumas coisas mesmo e o mais breve possнvel dou uma editada e adiciono mais informaзхes.
Reply
#9

Quote:
Originally Posted by matheusspohr
Посмотреть сообщение
To aprendendo kkk...
Mas, faltou coisas, como explicar pra que serve "TEXT NOT NULL" sei que quer dizer que o "texto nгo й nulo", mas pra que vai servir na tabela e talz.
Significa que requer uma string. Tentar inserir um registro nessa tabela sem propor o conteъdo para esta cйlula gerarб um aviso e provavelmente irб inserir um texto nгo vazio. Vale lembrar que um string vazia й diferente de uma string nula. O mesmo vale para INTEGER, NOT NULL significa 0 nesse caso. Й uma boa prбtica definir valores padrхes para colunas, por exemplo DEFAULT 5. Ao inserir um registro nesta linha, se nгo for proposto valor para esta coluna ela serб 5.
Reply
#10

Quote:
Originally Posted by arakuta
Посмотреть сообщение
Significa que requer uma string. Tentar inserir um registro nessa tabela sem propor o conteъdo para esta cйlula gerarб um aviso e provavelmente irб inserir um texto nгo vazio. Vale lembrar que um string vazia й diferente de uma string nula. O mesmo vale para INTEGER, NOT NULL significa 0 nesse caso. Й uma boa prбtica definir valores padrхes para colunas, por exemplo DEFAULT 5. Ao inserir um registro nesta linha, se nгo for proposto valor para esta coluna ela serб 5.
Bela explicaзгo, eu havia me esquecido de por no tutorial estes conceitos..
Reply


Forum Jump:


Users browsing this thread: 4 Guest(s)