Groß/Kleinschreibung / Collations

Beim SQL-Server 2000 wird standardmäßig bei Tabellen- und Spaltennamen zwischen Groß- und Kleinschreibung unterschieden.

Hat man bereits bestehende SQL-Befehle oder wird dies nicht benötigt, kann man diese Option auch abstellen. Man hat die Möglichkeit beim Erstellen der Datenbank den Collation Name anzugeben. Eine Collation ist in erster Linie für die verwendete Sprache zuständig. Zusätzlich kann man aber auch angeben, ob man zwischen Groß- und Kleinschreibung unterscheidet (CASE-SENSITIVE = CS) oder nicht (CASE-INSENSITIVE = CI). Beim Erzeugen einer neuen Datenbank kann man bei den Database Properties/General unter Collation name die entsprechende Collation auswählen: zwei Beispiele:

 SQL_Latin1_General_CP1_CI_AI (Latin1, case insensitive)
 SQL_Latin1_General_CP1_CS_AS (Latin1, case sensitive)

Eine Übersicht über sämtliche Collations, findet man im MSDN.

Bei einer bestehenden Datenbank kann man über den “alter”-Befehl, die Collation ändern:

 alter database TestDB collate SQL_Latin1_General_Cp850_CI_AS

Windows NT schneller starten

Windows NT erwartet bekanntlich beim Hochfahren immer die Eingabe von Username und Passwort. In vielen Bereichen ist dieses Sicherheitsfeature aber eher hinderlich. Durch entsprechende Einträge in der Registry können Sie die Anmeldung automatisieren. Legen Sie dazu folgende Schlüssel an: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\WinLogonmit diesen Werten:

 AutoAdminLogon (REG_SZ) = "1"
 DefaultPassword (REG_SZ) = "<Betreffendes Passwort>"
 DefaultUserName (REG_SZ) = "<Betreffenden Username>"
 DefaultDomain (REG_SZ) = "<Betreffende Domain>"

Der Eintrag Default Domain wird nur benötigt, wenn Sie sich tatsächlich an einer Domain anmelden

Verwendung von Datumsformaten

Bei multilingual eingerichteten Server und Anwendungen gibt es besonders bei der Nutzung von Datumsformaten in SQL-Statements einiges zu beachten, damit dieser in jeder Sprache eindeutig funktionieren.

Die Schreibweise date = yyyymmdd bzw. datetime yyyymmdd hh:MM:ss ist vollkommen sprachneutral und sollte daher grundsätzlich verwendet werden. Alternativ kann auch die komplexere Schreibweise mit den geschweiften Klammern genutzt werden.

Alle anderen Schreiben (insbesondere yyyy-mm-dd) sind zu vermeiden, da diese je nach Spracheinstellung des Servers, des SQL-Servers und des SQL-Users nur Problemen führen kann.

Link: Der ultimative Guide für die Datetime Datentypen

Validating eMail-address via Regular Expressions

Regular expressions are supported via the RegExp object by VBScript since version 5 of the scripting engine:

 Function RegExpTest(sEmail)
   RegExpTest = false
   Dim regEx, retVal
   Set regEx = New RegExp
   ' Create regular expression:
   regEx.Pattern ="^[\w-\.]{1,}\@([\da-zA-Z-]{1,}\.){1,}[\da-zA-Z-]{2,3}$"
   ' Set pattern:
   regEx.IgnoreCase = true
   ' Set case sensitivity.
   retVal = regEx.Test(sEmail)
   ' Execute the search test.
   If not retVal Then
     exit function
   End If
   RegExpTest = true
 End Function

Putty Einstellungen übernehmen

Um Einstellungen von Putty von einem System auf ein anderes zu übertragen, können die Einstellungen aus der Registry des Rechners exportiert werden und auf einem neuen Rechner wieder importiert werden. Anschließend stehen alle Einstellungen und Sitzungen auf dem neuen System zur Verfügung.

Die Einstellungen befinden sich in der Registry unter HKCU\Software\SimonTatham. Einfach diesen Baum in eine *.reg Datei exportieren und diese dann wieder einlesen.

Der Export kann einfach mit dem Befehl regedit /e putty.reg HKEY_CURRENT_USER\Software\SimonTatham exportiert und mit regedit /s putty.reg wieder importiert werden.

Menubar in MS Access

Wenn man die Menu-Bar in Access ausblendet, kann es passieren, daß diese auch für alle anderen Access-Anwendungen deaktiviert ist …

Um die Menu Bar dennoch wieder zu aktivieren kann man lediglich mit dem VBA-Code:

 Application.Commandbars.Item("Menu Bar").Enabled = True

Die Menu Bar wieder aktivieren. Allerdings ist diese Einstellung nicht persistent. Durch den Code:

 docmd.showtoolbar "Menu Bar", acToolbarYes

kann die Einstellung allerdings wieder persistent eingestellt werden.

Programme ausserhalb des Suchpfads bequem starten

Angenommen, Sie haben in /home/ichselber/test/ das Programm fiesesskript.sh liegen und wollen nicht bei jedem Start des Programms den Pfad komplett eingeben: Wenn Sie das Programm nicht in den Suchpfad mit aufnehmen wollen, liegt die Loesung in dem Befehl hash:

 hash -p /pfad/zu/meinem/programm/programm kurzname

Anhand unseres Beispiels sieht das so aus:

 hash -p /home/ichselber/test/fiessesskript.sh fies

Mit diesem Befehl bewirken Sie, dass ab jetzt die Eingabe fies reicht. Wenn Sie nur hash eingeben, bekommen Sie die Liste der bereits gespeicherten Kommandos angezeigt. Mit dem Befehl hash -r wird die Liste geleert.

Sortierung Outlook-Adressbuch

Standardmäßig ist das Adressbuch von Outlook immer nach [Vorname Nachname] sortiert.

Um die Sortierung bei Outlook XP/2003 zu ändern muss unter Extras/EMail Konten ausgewählt werden. Auf dem Dialog ‘Vorhandene Verzeichnisse oder Adressbücher anzeigen oder bearbeiten’ auswählen und anschließend das Adressbuch auswählen. In dem folgedem Fenster kann nun die Anzeigenreihenfolge festgelegt werden. Nach einem Neustart von Outlook ist diese dann im Adressbuch auch verf

Sprachunabhängig Datumsformate

Bei Datumsvergleichen zählen immer die Spracheinstellungen des SQL-Servers bzw. die Sprache des SQL-Users.

Es gibt aber auch die Möglichkeit unabhängig von den Spracheinstellungen im SQL-Server Datumsvergleiche zu machen. Dabei werden zwei verschiedene Datumsarten unterschieden: Datumswerte und Zeitstempel (Timestamps).

Die Formartierung sieht wie folgt aus:

  • Datumswert: {d "2000-06-02"}
  • Zeitstempel: {ts "2000-06-02 12:00:00.000"}

Diese Formate können ganz normal in einem SQL-Statement benutzt werden.

Beispiel:

 select * from tabelle where datum between {d ' 2000-06-01'} and {d ' 2000-06-05'}