Hallo,
ich möchte gerne ein Perlprogramm schreiben womit ich in einer SQLite Datenbank abfrage ob die Tabelle existiert oder nicht. Habe auch schon folgendes:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#!usr/bin/perl
use warnings;
use strict;
use DBI;
my $datenbankname = "datenbank.db";
#-----------------DATENBANK-VERBINDUNG------------------#
my $database = DBI::->connect("dbi:SQLite:dbname=$datenbankname","","")
or die "Fehler bei Datenbankverbindung!";
#----------------DATENBANK-VERBINDUNG-ENDE--------------#
#---------------UEBERPRUEFUNG-EXIST-------------#
my $exist = $database->selectall_arrayref( "SELECT * from schueler" );
if ( defined $exist ) #
{
#----------------LOESCHT-TABELLE--------------#
my $sql = 'DROP TABLE schueler';
$database->do($sql)
or die $database->errstr;
#----------------LOESCHT-TABELLE-ENDE-------------#
}
else
{
print "Es konnte auf keine existierende Datei zugegriffen werden";
print "\n";
print "Bitte laden Sie er die Schueler in die Datenbank";
print "\n";
exit;
}
#------------UEBERPRUEFUNG-EXIST-ENDE------------#
#---------------DATENBANK-VERBINDUNG-DISCONNECT-------------#
$database->disconnect
or $database->errstr;
#------------DATENBANK-VERBINDUNG-DISCONNECT-ENDE------------#
Das Problem ist eigentlich bei meinem Code, dass wenn die Tabelle nicht existiert bringt er mir einen Fehler. Kann mir jemand sagen wie ich die Abfrage richtig mache?
Danke
Last edited: 2012-11-07 16:01:00 +0100 (CET)