Archiv-Seite 2

Pfui Papa, pfui Benedetto

Papst BenediktSchmeichelhaft war es ja schon, als wir „unseren“ Pabst bekamen. Noch dazu einer, der im selben Landkreis lebte wie ich. War mir Kardinal Ratzinger in manchen Dingen suspekt so war er mir als Pabst Benedetto doch wieder sympathischer.

Zumindest bist heute.

Heute hat er mich schon in aller früh geärgert als ich die Schlagzeile las: Pabst Benedikt wird sich mit dem Dalai Lama nicht treffen. Eine zuvor schon vereinbarte Audienz wurde wieder abgesagt, weil der Papst die Beziehungen zu China nicht gefährden will.

Ich war damals zutiefst von Angelika Merkel beeindruckt als sie gegen alle Proteste den Dalai Lama empfing. Daß aber jetzt ausgerechnet der Papst vor China kuscht, das hätte ich nie gedacht!

Wie lange wollen wir eigentlich noch vor der neuen Weltmacht China den Schwanz einziehen? Wer Geld hat darf Menschenrechte verletzen? Wer Geld hat darf Menschen töten, foltern, schänden und was weiß ich noch alles?

Pfui Benedikt - gerade Du als Oberhaupt einer Kirche hättest hier ein Zeichen setzen müssen. Wäre ich nicht schon längst aus Deiner Kirche ausgetreten – jetzt wäre es endgültig so weit….

Dalai Lama

Brainfarts ist tot – es lebe Medikula

Ich gestehe: ich las Brainfarts!
Mir gefiel der Blog und die Einblicke die er mir in den letzten Monaten in die Welt des Rettungsdienstes gab. Aber auch die anderen Themen wie Studium, Bergsteigen etc. sind (meistens) interessant für mich.

medikula.gifIn letzter Zeit hat Brainfarts jedoch etwas geschwächelt – er blogte wenig und seine Themen waren – in meinen Augen – oft etwas abstrus. Brainfarts sah das wohl genauso – und beendete seinen Blog. Jedoch nicht, ohne eine „Spur“ – sprich ein Rätsel – zu hinterlassen, das den Blogleser auf seinen neuen Blog führen soll.

Ist das der Versuch seine Blog-Leser zu selektieren? Nur die mit bestimmten IQ dürfen weiterlesen?
Wie auch immer – ich habe den Test bestanden — Wikipedia sei Dank!!!

Und so darf ich bei Medikula weiterlesen – seinem neuen Blog. Neues Studium – neuer Blog — ich bin schon gespannt auf Deine neuen Beiträge Joschua!!!

Heil Google ???

Google bietet auf seiner Webseite „Sprachtools“ an. Damit lassen sich Texte und andere Homepages automatisiert übersetzen.

Was Google allerdings da so übersetzt läßt einen manchmal etwas erschrecken – zumindest wenn man etwas allergisch ist auf die politische Farbe braun…

Gibt man nämlich als zu übersetzenden Text „hello Google“ ein und läßt es von Englisch ins Deutsche übersetzen kommt das dabei heraus:
(hello muß klein geschrieben sein – bei „Hello Google“ paßts – Gott sei Dank!)

Heil Google ???

Ein Schelm, wer Böses dabei denkt….

Callando? Nein danke!

Vor 3 Jahren wollte ich meinen DSL-Zugang absichern für den Fall, daß T-Online mal ausfällt. Dazu suchte ich einen Provider der keine Grundgebühr verlangt und nur nach Volumen abrechnet.

In Callando glaubte ich so einen Provider gefunden zu haben: DSL-by-call mit 1 GB monatlichem Freivolumen ohne Grundgebühr. Das würde für einen „Not-Zugang“ allemal reichen.

Nun macht genau dieser Tarif Schlagzeilen: Callando ändert den Vertrag in eine Flat-Rate mit monatliche Grundgebühr. Die Vertragsänderung bekam man per eMail zugestellt – und wer nicht widersprach hat den Vertrag angenommen – meint zumindest Callando. Und bucht auch gleich frech vom Konto ab.

Die meisten User werden wohl bezahlen – obwohl an der Rechtmäßigkeit dieses Vorgehens große Zweifel bestehen. Für Leidensgenossen liste ich hier mal einige Links auf, die mir meine Entscheidung nicht zu bezahlen erleichtert haben:

Callando in „Vorsicht Kunde“ des c’t Magazin
Sehr erhellend finde ich das Interview mit dem Pressesprecher von Callando. Wer kann soll sich das Video unbedingt ansehen….

Umfangreicher Forums-Thread zum Thema
Hier diskutieren Betroffene ihre Erfahrungen mit Callando und ihre weitere Vorgehensweise.

Interessanter BLOG-Beitrag von „Vertretbar“
Ein Leidensgenosse betrachtet die rechtliche Seite

Schweigen kann nicht als Zustimmung gelten – so sieht es zumindest das Landgericht Frankfurt.
Artikel dazu bei wettbewerbszentrale.de
Das kommentierte Urteil
Der Kommentar eines Rechtsanwalts
Ein Artikel dazu bei heise.de

Mit Raketen gegen Regenwolken – Olympische Spiele in China 2008

2008 finden bekanntlich in China die Olympischen Spiele statt. Dies ist sehr umstritten, da China bekanntermaßen Menschenrechte mit Füßen tritt – man informiere sich nur mal über die Lage der Tibeter in ihrem eigenen Land…

Abgesehen davon interessieren sich die Chinesen offenbar auch nicht unbedingt für das Weltklima. Wie anders könnte man es sich erklären, daß sie sich 2008 auch darin versuchen wollen, das Wetter zu manipulieren und „Petrus“ spielen wollen.

Mit Raketen gegen Regenwolken – typisch China.
Wer mehr dazu lesen will: Hier ist der Bericht von der Netzeitung

Windows findet nix

In einer Delphi-Anwendung verwende ich eine selbst gemachte Komponente. Da ich deren Eigenschaften geändert habe muß ich in den Formularen diese Eigenschaften rausnehmen. Allerdings besteht das Programm aus über 250 Masken – ein bischen viel.

Kein Problem – denke ich, dann suche ich halt mit dem Datei-Explorer. Verzeichnis aufgemacht, CTRL-F gedrückt, Suchwerte eingegeben – und nichts gefunden!!! Wie bitte?

Nach langem rumgesuche komme ich zu der Erkenntnis, daß seit Windows 2000 nur noch bekannte Dateien durchsucht werden. Da für *.dfm Dateien kein „Filter“ (also ein Programm zum durchsuchen) definiert ist, werden diese Dateien einfach ignoriert….

Um Dateien mit unbekannter Endung zu durchsuchen geht man wie folgt vor:
In den Eigenschaften des Indexdienstes macht man ein Häckchen bei:

„Dateien mit unbekannter Erweiterung indizieren“

Wohl gemerkt: der Indexdienst muß nicht aktiviert sein. Man ändert also eine Einstellung eines nicht aktiven Dienstes – und dann findet die Suche plötzlich wieder was. Ob das noch logisch ist, möchte ich jetzt lieber nicht erörtern….

Die Eigenschaften des Indexdienstes erreicht man übrigens wie folgt:
Im Datei-Explorer die Suche aktivieren (CTRL-F), hier Indexdienst anklicken, im erscheinenden Dialog den Button „Erweitert“ anklicken, im neuen Fenster die Konsolenstruktur einblenden, recht Maustaste auf Indexdienst, Eigenschaften – und hier ist das gesuchte Feld zum anhackeln.

Oder etwas einfacher: in der Registry diesen Schlüssel:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\
Control\ContentIndex

mit einem DWORD-Wert: FilterFilesWithUnknownExtensions von „1″ versehen.

Ist das noch übersichtlich oder gar verständlich? Ich glaube nicht…..

Kolossal!

Sie sterben, weil wir sie vergessen.
Und sie leben, wenn wir sie benutzen.
Die Rede ist von Wörtern!

Wer nutzt heute noch Wörter wie „kolossal“, wer weiß noch, was ein „Gabelfrühstück“ ist oder gar ein „Hagestolz“? (Brunch, Junggeselle)

Eigentlich schade wenn Wörter sterben. Bei manchen versteht man es ja noch, weil es die benannten Dinge nicht mehr gibt („Wählscheibe“). Aber so schöne Wörter wie „famos“, „Flegel“ oder auch „Xanthippe“ sind Wörter, die sind doch einfach nur schön, oder?

Damit sie nicht ganz aussterben gibt es die Webseite von Bodo Mrozek: www.bedrohte-woerter.de/. Dort hat er eine rote Liste der bedrohten Wörter zusammengestellt. Leider ohne sie näher zu beschreiben – dazu müsste man sein Buch kaufen. Aber trotzdem lohnt es sich spaßeshalber mal in dieser Liste zu stöbern und zu schauen, welche Wörter man selbst schon vergessen hat.

Und wer will, kann gar selbst Wörter als fast ausgetorben melden. Also, hurtig ran an die Tastatur und dem ehrenwerten Bodo Wörter melden. Aber keinen Mumpitz machen, gell?

Hey, Hey, Wiki – welches Wiki paßt zu mir?

Ich will jetzt endlich auch einmal ein Wiki haben. Eines für mich und meine Kollegen.

Ein bissl rumgesucht und schon gefunden: ProntoWiki. Weil’s in C# geschrieben ist, eine gscheide SQL-Datenbank unterstützt und vor allem weil das Programm sehr übersichtlich ausschaut, so daß ich mir Änderungen und Erweiterungen selbst zutraue.

Hätte ich also nicht schon ein passendes Wiki gefunden – tja, dann müßte ich wohl bei WikiMatrix vorbeischauen. Hier kann man 88 Wikis miteinander vergleichen. Von SocialText bis TikiWiki (was für ein Name!). Und man kann suchen: will man eines in C# oder eines in Ruby? Ganz interessant ist hier die frei zusammenklickbare Suche über viele Kriterien.

wiki1.jpg

Naja, vielleicht schau’ ich doch nochmal vorbei und finde ein noch passenderes??
Mal schauen…

NULL-Werte in DropDownList

Eine DropDownList soll dynamisch mit Inhalten aus einer Tabelle (B) gefüllt werden. Der ausgewählte Index soll als Schlüssel in Tabelle (A) eingefügt werden.

Dies realisiert man relativ einfach durch Datenbindung. Dabei wird der SelectedValue des DropDownfeldes mit der Spalte in Tabelle (A) verknüpft:

dropdownlist1.jpg

Als Datenquelle für die Liste im DropDownList wird eine entsprechende DataSource gewählt:

dropdownlist2.jpg

Und schon klappts – Naja fast.

Will man nämlich auch „keinen Wert“ auswählen hat man ein kleines Problem. Denn der Wert „nichts“ (oder NULL) ist in der Tabelle (B) nicht enthalten. Versucht man nun einen Datensatz anzuzeigen, der in Tabelle (A) im Fremdschlüsselfeld den Wert NULL enthält, bekommt man folgenden Fehler:

selectedvalue, das ungültig ist, weil es nicht in der Elementliste vorhanden ist

Da in Tabelle (B) der Wert NULL nicht vorhanden ist, weiß das Programm nicht, welchen Wert es in der DropDownList anzeigen soll (weil es nicht in der Elementliste vorhanden ist). Um dennoch NULL-Werte (also nix) auswählen zu können ist folgende simple Erweiterung des DropDownList erforderlich:

Die Eigenschaft „AppendDataBoundItems“ des DropDownList wird auf True gesetzt. Damit „mischt“ man die statisch eingegebenen Einträge mit denen, die aus der DataSource kommen.

dropdownlist4.jpg

Für den NULL-Wert fügt man nun unter ITEMS einen Leer-Wert hinzu – und fertig ist das Ganze.

dropdownlist5.jpg

Nun besteht die Liste im DropDownList aus den Werten aus der Datenbank und einem einzelnen leeren Wert, den wir manuell hinzugefügt haben.

UNIQUE CONSTRAINT ist nicht CHECK CONSTRAINT

In einer Datenbanktabelle will man manchmal sicherstellen, daß in einer Spalte Werte nicht mehrfach vorkommen, sie also „unique“ sind. Bei einem Primärschlüssel wird dies automatisch durch Definition der Spalte als Primärschlüssel sichergestellt – aber es gibt Fälle, in denen man zwar die Einzigartigkeit der Werte sicherstellen will, aber keinen Primärschlüssel benötigt oder haben mag.

Für diese Fälle gibt es die UNIQUE CONSTRAINT. Will man die jedoch im „Microsoft SQL Server Management Studio (Express)“ definieren, stößt man auf ein kleines Problem: Nirgendwo findet man die Möglichkeit diese UNIQUE CONSTRAINT festzulegen.

Zwar gibt es CONSTRAINTS, doch dahinter verbergen sich sogenannte CHECK CONSTRAINTS. Erst nach einigem herumgesuche wird einem klar: CHECK CONSTRAINTS sind nicht gleich UNIQUE CONSTRAINTS.

Doch des Rätsels Lösung ist – wenn man’s weiß – ganz einfach. CHECK CONSTRAINTS prüfen, ob die gespeicherten Werte bestimmte Bedingungen erfüllen. Also ob z.B. eine Eingabe mindestens aus x Zeichen besteht. Es wird hier also etwas „gecheckt“.

UNIQUE CONSTRAINTS dagegen sind eigentlich so was wie ein Index – und verstecken sich daher auch unter dem Menüpunkt „INDEXES“. Und das ist die erste Gemeinheit: ein UNIQUE CONSTRAINT ist ein Index – kein CONSTRAINT.

Die zweite Gemeinheit: Man kann bei einem Index festlegen, daß er „UNIQUE“ ist. Aber: damit wird es noch lange kein UNIQUE CONSTRAINT. Erst wenn man den Type des Index auf „Unique Key“ setzt – dann hat man endlich eine UNIQUE CONSTRAINT.

uniqueconstraints.jpgUNIQUE CONSTRAINT = UNIQUE KEY INDEX

Es sei noch erwähnt, daß man obige Maske erreicht, wenn man auf der Tabelle rechts klickt und den Punkt „MODIFY“ auswählt. Dann klickt man in der Symbolleiste den Punkt „Manage Indexes an Keys“ an.

Das Ganze geht nicht, wenn man einen bereits bestehenden Index auswählt und sich die Properties anzeigen läßt. Hier gibt es zwar auch einen „Type“ (nämlich Index Type) – doch der bedeutet was anderes.

uniqueconstraints.jpgFalsche Fährte: Index Type ist nicht der Type des Index!

« Vorige SeiteNächste Seite »


 

November 2009
M D M D F S S
« Jul    
 1
2345678
9101112131415
16171819202122
23242526272829
30  

Kategorien