Dodane faktyczne ksiazki,
Dodane zmienne w template z numerami pol rekordow bazy poprawiajace czytelnosc kodu Dodane pola do tabeli w template i chyba jeszcze cosmaster
parent
a6efcc3ef8
commit
5144d26f36
|
@ -0,0 +1,34 @@
|
|||
#!/usr/bin/perl
|
||||
|
||||
use warnings;
|
||||
use strict;
|
||||
use strict 'vars';
|
||||
|
||||
use DBI;
|
||||
|
||||
my $dbfile = 'ksiazki.db';
|
||||
my $dbh = DBI->connect("dbi:SQLite:dbname=$dbfile", "", "");
|
||||
|
||||
my($id,$isbn,$title,$author,$owner,$state,$who,$can_borrow,$reserved,$comment);
|
||||
|
||||
|
||||
open (INPUT,"ksiazki");
|
||||
|
||||
my $_ = <INPUT>;
|
||||
|
||||
while ($_)
|
||||
{
|
||||
($id,$isbn,$title,$author,$owner,$can_borrow) = split(/,/,$_);
|
||||
chomp $can_borrow;
|
||||
if($can_borrow eq 'Tak')
|
||||
{
|
||||
$can_borrow = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
$can_borrow = 0;
|
||||
}
|
||||
$dbh->do("insert into ksiazki values ($id,$isbn,'$title','$author','$owner',1,'nikt',$can_borrow,0,'')");
|
||||
$_ = <INPUT>;
|
||||
}
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
0000000000017,9788324607686,Ruby Receptury,Lucas Carlson; Leonard Richardson,HS,Tak
|
||||
0000000000024,9788324619535,Programowanie w Ruby od podstaw,Peter Cooper,Att,Tak
|
||||
0000000000031,9788324605224,Programowanie w jezyku Ruby wydanie II,Dave Thomas;Chad Fowler;Andy Hunt,HS,Tak
|
||||
0000000000048,9788371979859,Core Java 2 Techniki zaawansowane,Cay S. Hortsmann;Gray Cornell,HS,Tak
|
||||
0000000000086,9788371973574,Linux Internet Server czarna ksiega,H. Tsuji; T. Watanabe; acrobyte,Rmk,Tak
|
||||
0000000000079,9788373610132,Delphi praktyczny kurs,Tomasz M. Sadowski,Rmk,Tak
|
||||
0000000000376,9788371975271,Java Servlet Programowanie,Jason Hunter;Wiliam Crawford,HS,Tak
|
||||
0000000000383,9788387216481,Zarzadzanie sieciami IP za pomoca ruterow Cisco,Scott M. Ballew,Antoszka,Tak
|
||||
0000000000369,9788386718559,TCP/IP,Timothy Parker,HS,Tak
|
||||
0000000000352,9788373617094,CSS,Eric A. Meyer,Rmk,Tak
|
||||
0000000000338,0000000000000,Intel 64 and IA-32 Architectures Sofware Developers Manual,Czesiek,Tak
|
||||
0000000000345,9780470516621,The 3G IP Multimedia, Subsystem,Gonzalo Camarillo; Miguel A. Garcia-Martin,Rysiek,Tak
|
||||
0000000000055,9788387216047,Unix Administracj systemu,Aeleen Frisch,Rmk,Tak
|
||||
0000000000062,9788324616046,SQL praktyczny kurs,Danua Mendrala; Marcin Szeliga,Rmk,Tak
|
BIN
bin/ksiazki.db
BIN
bin/ksiazki.db
Binary file not shown.
|
@ -0,0 +1,15 @@
|
|||
id,isbn,tytul,autor,wlasciciel,mozna brac?
|
||||
0000000000017,9788324607686,Ruby Receptury,Lucas Carlson; Leonard Richardson,HS,Tak
|
||||
0000000000024,9788324619535,Programowanie w Ruby od podstaw,Peter Cooper,Att,Tak
|
||||
0000000000031,9788324605224,Programowanie w jezyku Ruby wydanie II,Dave Thomas;Chad Fowler;Andy Hunt,HS,Tak
|
||||
0000000000048,9788371979859,Core Java 2 Techniki zaawansowane,Cay S. Hortsmann;Gray Cornell,HS,Tak
|
||||
0000000000086,9788371973574,Linux Internet Server czarna ksiega,H. Tsuji; T. Watanabe; acrobyte,Rmk,Tak
|
||||
0000000000079,9788373610132,Delphi praktyczny kurs,Tomasz M. Sadowski,Rmk,Tak
|
||||
0000000000376,9788371975271,Java Servlet Programowanie,Jason Hunter;Wiliam Crawford,HS,Tak
|
||||
0000000000383,9788387216481,Zarzadzanie sieciami IP za pomoca ruterow Cisco,Scott M. Ballew,Antoszka,Tak
|
||||
0000000000369,9788386718559,TCP/IP,Timothy Parker,HS,Tak
|
||||
0000000000352,9788373617094,CSS,Eric A. Meyer,Rmk,Tak
|
||||
0000000000338,0000000000000,Intel 64 and IA-32 Architectures Sofware Developer's Manual,Czesiek,Tak
|
||||
0000000000345,9780470516621,The 3G IP Multimedia, Subsystem,Gonzalo Camarillo; Miguel A. Garcia-Martin,Rysiek,Tak
|
||||
0000000000055,9788387216047,Unix Administracj systemu,Aeleen Frisch,Rmk,Tak
|
||||
0000000000062,9788324616046,SQL praktyczny kurs,Danua Mendrala, Marcin Szeliga,Rmk,Tak
|
|
@ -0,0 +1,38 @@
|
|||
jakoś trzeba mieć userów (hasła możesz sprawdzać w ldap - jeśli chcesz
|
||||
w ldap trzymać więcej to poprawimy tę tablicę lub jej nie będzie. Ale
|
||||
teraz jest).
|
||||
CREATE TABLE "user" ("user_id" INTEGER PRIMARY KEY AUTOINCREMENT NOT
|
||||
NULL , "user_fname" varchar, "user_lname" varchar, "user_login"
|
||||
varchar NOT NULL UNIQUE , "user_enabled" integer NOT NULL DEFAULT 1)
|
||||
|
||||
Prosta tablica do opisu autorów
|
||||
CREATE TABLE "author" ("author_id" integer PRIMARY KEY AUTOINCREMENT
|
||||
NOT NULL UNIQUE , "author_fname" VARCHAR, "author_lname" varchar NOT
|
||||
NULL );
|
||||
|
||||
Tablica opisująca książki
|
||||
CREATE TABLE "book" ("book_id" integer PRIMARY KEY AUTOINCREMENT NOT
|
||||
NULL UNIQUE ,"book_isbn" integer NOT NULL ,"book_title" varchar NOT
|
||||
NULL, "owner_user_id" integer NOT NULL )
|
||||
owner_user_id - właściciel - ale jeśli moze być wielu współwłaścicieli
|
||||
to można zrobić jak z autorami. Napisz czy może być wielu właścicieli
|
||||
- a możę trzeba się zastanowić czy trzymać historię - jeden właściciel
|
||||
może sprzedać książkę innemu...
|
||||
|
||||
Tablica opisująca powiązanie (relację) książki i autorów.
|
||||
CREATE TABLE "main"."book_author" ("author_id" integer NOT NULL ,
|
||||
"book_id" integer NOT NULL , PRIMARY KEY ("author_id", "book_id"))
|
||||
|
||||
|
||||
Tablica opisująca komentarze
|
||||
CREATE TABLE "book_comment" ("book_comment_id" INTEGER PRIMARY KEY
|
||||
AUTOINCREMENT NOT NULL , "book_comment_body" VARCHAR, "user_id"
|
||||
INTEGER NOT NULL , "book_comment_date" DATETIME DEFAULT
|
||||
CURRENT_TIMESTAMP, "book_comment_canceled" INTEGER NOT NULL DEFAULT 0)
|
||||
możebyć wiele opisów mogą przyrastać itp itd - zastanawiam się nad
|
||||
book_comment_type (np. co jest recenzją itp - ale na razie zostawmy).
|
||||
|
||||
Trzeba jeszcze opisać początkowy status książki oraz historię
|
||||
wypożyczania itp.
|
||||
podeślę
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
Co musi być:
|
||||
1)id ksiazki
|
||||
2)tytul ksiazki
|
||||
3)autor ksiazki
|
||||
4)wlasciciel ksiazki
|
||||
5)czy ksiazka jest?
|
||||
6)kto wzial ksiazke?
|
||||
7)czy mozna ksiazke brac?
|
||||
8)czy ksiazka jest zarezerwowana?
|
||||
9)komentarz
|
||||
|
||||
create table ksiazki (id integer primary key autoincrement not null unique,isbn int, title string,
|
||||
author string,owner string,state bool,who string,can_borrow bool,reserved bool,comment string);
|
||||
|
||||
create table ksiazki (id int,isbn int, title string,
|
||||
author string,owner string,state bool,who string,can_borrow bool,reserved bool,comment string);
|
||||
|
||||
|
||||
insert into ksiazki values (null,1,'tytul1','autor1','wlasciciel1',1,'nikt',1,0,'');
|
||||
insert into ksiazki values (null,2,'tytul2','autor2','wlasciciel2',1,'nikt',1,0,'');
|
||||
insert into ksiazki values (null,3,'tytul3','autor3','wlasciciel3',1,'nikt',1,0,'');
|
|
@ -0,0 +1,9 @@
|
|||
use DBI;
|
||||
|
||||
my $dbfile = 'ksiazki.db';
|
||||
my $dbh = DBI->connect("dbi:SQLite:dbname=$dbfile", "", "");
|
||||
|
||||
my $sth = $dbh->prepare("select * from ksiazki") or die "Nie mozna spreparowac zapytania";
|
||||
$sth->execute() or die "Nie mozna wykonac zapytania";
|
||||
|
||||
print ${$sth->fetchall_arrayref}[1][2];
|
Loading…
Reference in New Issue