SQLite i Lazarus

SQLite i Lazarus

offline
  • Peca  Male
  • Glavni Administrator
  • Predrag Damnjanović
  • SysAdmin i programer
  • Pridružio: 17 Apr 2003
  • Poruke: 23208
  • Gde živiš: Niš

Eh, ako se nisam nocas namucio da provalim kako da proradi SQLite u Lazarus-u... nikad nisam.
Koje su to cake, strasno...

Al ajd da krenem sa uputstvom.
Pre nego sto ista uradite, odite na http://www.sqlite.org/download.html i skinite DLL za 3.x, bez TCL podrske.
DLL ubacite u System32 folder vaseg Windowsa.

Prvo, video sam na njihovom Reference sajtu da pise da se treba instalira 'sqlitedblaz.lpk' paket, a on ladno ne postoji u novom Lazarusu.

Imas: sqlite3laz.lpk, sqlitedslaz.lpk, sqlitelaz.lpk.
E, dok sam provalio koj je od ta 3... pet puta sam rekompajlirao Lazarus...
Treba ovaj sqlite3laz.lpk.

Dakle, ide se na meni Componets, pa na Open package file (.lpk), pa nadjes c:\lazarus\components\sqlite\sqlite3laz.lpk.
Kliknes na Compile, pa na Install.
Potrajace Install, dok rebuild-uje Lazarus.
Lazarus se Restartuje.

U DataAccess jezicku dobijas novu komponentu - TSqlite3Dataset.
Postavis je na formu.

E sada nova zackoljica.
Ako kreiras bazu onim SQLite command line programom, sa zvanicnog sajta - baza nece da radi. Buni se kako ne prepoznaje tipove polja. Dok sam provalio u cemu je kvaka..... izludeh... menjao sam komponente i rebuild-ovao Lazarus 3 puta....
A fazon je sledeci...
Bazu [tj. tabelu] mora kreiras tako sto ces uraditi dupli klik na Sqlite3Dataset1 objekat [koji smo postavili na formi], pa tu ima neki jadni editor.

I na kraju, zadnja zackoljica.
Da bi se podaci, koje upisete, pamtili - morate da kreirate u tabeli polje AutoInc, i da stavite properties
Sqlite3Dataset1.PrimaryKey = AutoInc
Tek onda ce da pamti unete podatke/izmene Smile
Blesavo, ali je tako... to i pise ovde
I tu sam izludeo, 2h se vrtim oko prostog pitanja 'zasto do djavola ne pamti........' Twisted Evil

Da nastavim sa uputstvom...

Nastavljamo sa podesavanjem properties-a
Sqlite3Dataset1.TableName = ime vase tabele
Sqlite3Dataset1.SaveOnClose = True
Sqlite3Dataset1.SaveOnRefetch = True
Sqlite3Dataset1.Active = True


Zatim, postavite na formu jedan TDatasource i stavite properties
Datasource1.DataSet = Sqlite3Dataset1

Zatim, otici u DataControl jezicak, postaviti na formu TdbGrid komponenentu, i staviti properties
dbGrid1.Datasource = Datasource1

I to bi bilo to... ako ste imali srecu da proradi Very Happy

Dopuna: 21 Feb 2006 5:38

Upravo provalih, mogu tabele da se kreiraju i sa onim officijalnim command-line alatom, ali morate da kucate blanko ispred i iza zareza, i velika slova za keywords i tipove polja.
Ovako:
CREATE TABLE e (AutoInc INTEGER , Ime VARCHAR , Prezime VARCHAR);
CREATE TABLE t (AutoInc INTEGER , Ime VARCHAR);



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Srđan Tot
  • Am I evil? I am man, yes I am.
  • Pridružio: 12 Jul 2005
  • Poruke: 2483
  • Gde živiš: Ljubljana

Kad vec pricamo o SQLite-u... ovde mozete naci razne programcice koje ce vam prilicno olaksati rad sa ovom bazom. Postoji i ODBC drajver tako da mozete koristiti bilo koje kontrole koje rade sa ODBC (bez sitnica kao sto su PrimaryKey = AutoInc i slicno) kao sto ste i pre navikli.

http://www.sqlite.org/cvstrac/wiki?p=SqliteTools



offline
  • Emil Beli
  • Pridružio: 03 Jan 2005
  • Poruke: 2990
  • Gde živiš: Beograd

Ne znam zasto se muchite sa tim SQLite-om? Baza je katastroficna.
PostrgreSQL je besplatan, a u rangu Oracle-a po brzini. Totalno je stabilan.

offline
  • Srđan Tot
  • Am I evil? I am man, yes I am.
  • Pridružio: 12 Jul 2005
  • Poruke: 2483
  • Gde živiš: Ljubljana

Jedini razlog zbog kojeg koristim SQLite je to sto ne treba nista da se podesava... sve sto ti treba je sqliteX.dll i baza radi Smile

Savrseno za male bazice (marketi, biblioteke, video klubovi, diskoteke,...).

offline
  • Emil Beli
  • Pridružio: 03 Jan 2005
  • Poruke: 2990
  • Gde živiš: Beograd

Pa i PostgreSQL isto... sve sto ti treba (na windowsu) je jedan DLL od nekih 300 K.

offline
  • Peca  Male
  • Glavni Administrator
  • Predrag Damnjanović
  • SysAdmin i programer
  • Pridružio: 17 Apr 2003
  • Poruke: 23208
  • Gde živiš: Niš

Postoji li PostgreSQL LPK komponenta za Lazarus?

Postoji komponenta za mysql 4.0, a ja koristim 4.1 Confused

offline
  • Srđan Tot
  • Am I evil? I am man, yes I am.
  • Pridružio: 12 Jul 2005
  • Poruke: 2483
  • Gde živiš: Ljubljana

Naravno Smile

O komponentama: http://wiki.lazarus.freepascal.org/index.php/TPSQL

Download: http://infoconsult.homelinux.net/cgi-bin/startup.cgi

offline
  • Peca  Male
  • Glavni Administrator
  • Predrag Damnjanović
  • SysAdmin i programer
  • Pridružio: 17 Apr 2003
  • Poruke: 23208
  • Gde živiš: Niš

A za MySQL 4.1? Smile
Na njihovom reference sajtu pise da postoji, ali ja je ne nadjoh...

Dopuna: 21 Feb 2006 19:20

Note. In latest SVN version of Lazarus you will find 3 MySQLConnection components. These are TMySQL40Connection, TMySQL41Connection and TMySQL50Connection. Make sure you use the correct one to connect to your server. So if you are running MySQL 4.1 use the TMySQL41Connection

a TMySQL41Connection nigde ne mogu da nadjem Confused

Ko je trenutno na forumu
 

Ukupno su 736 korisnika na forumu :: 24 registrovanih, 5 sakrivenih i 707 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: A.R.Chafee.Jr., awathorn, Brada i Gibanica, Bubimir, Dorcolac, flash12, kaptain, Krusarac, ladro, Milos82, nikoladim, novator, rajkoplje, rkekoke, S-lash, saxone, Schlange, Shinobi, t84dar, Vlad000, W123, yrraf, yufighter, zlatkoa987