Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Firebird -->Create table (https://www.delphipraxis.net/32996-firebird-create-table.html)

mikhal 31. Okt 2004 11:52

Re: Firebird -->Create table
 
Welchen SQL-Dialekt hast du eingestellt, Firebird Embedded ist da sehr kritisch! Bei Firebird 1.5x muß es Dialekt 3 sein.

Grüße
Mikhal

der-C 31. Okt 2004 12:54

Re: Firebird -->Create table
 
so,

ich habe "DEFAULT CHARACTER SET" von ISO8859_1 auf NONE geändert (beim Createn der DB)

jetz gehts :gruebel:

noch ne Frage:
ich speichere auch grössere Texte ab, VARCHAR(10000) ist da wohl nicht die beste Lösung oder?
kann man nach BLOB sortieren lassen mit ORDER BY?
wie speichert man grössere texte am besten?

Jens Schumann 31. Okt 2004 14:59

Re: Firebird -->Create table
 
Zitat:

Zitat von mikhal
Bei Firebird 1.5x muß es Dialekt 3 sein.

Ja - habe ich eingestellt

Jens Schumann 31. Okt 2004 15:04

Re: Firebird -->Create table
 
Zitat:

Zitat von der-C
...
ich habe "DEFAULT CHARACTER SET" von ISO8859_1 auf NONE geändert (beim Createn der DB)

ISO8859_1 benutze ich auch immer wg. der deutschen Umlaute
Zitat:

Zitat von der-C
...
ich speichere auch grössere Texte ab, VARCHAR(10000) ist da wohl nicht die beste Lösung oder?
kann man nach BLOB sortieren lassen mit ORDER BY?

Ich speichere Texte immer in ein BLOB Feld:
BLOB SUB_TYPE TEXT SEGMENT SIZE 80

Ob danach sortieren kann habe ich nich nicht ausprobiert. Ich vermute aber das es nicht gehen wird.

der-C 31. Okt 2004 17:09

Re: Firebird -->Create table
 
wie kann ich eine tabelle samt Metadaten kopieren?

mit CREATE TABLE tab SELECT * FROM other_tab gehts offenbar nicht
(auch nicht mit AS vor dem select)

und wie geht das umbenennen von tabellen?

gibt es eine referenz wo sowas drin steht? aus meiner kann ich nichts zu den Problemen finden

ibp 31. Okt 2004 18:49

Re: Firebird -->Create table
 
imho geht das nicht, tabellen und spalten lassen sich nicht umbenennen. du kannt aber eine neue anlegen, dann die inhalte kopieren und am schluss die eine tabelle löschen!

der-C 1. Nov 2004 06:17

Re: Firebird -->Create table
 
wie kann ich eine neue tabelle anlegen ohne die spaltennamen und datentypen zu kennen?
also eine kopie

PS also Spalten lassen sich mit ALTER TABLE umbenennen

ibp 1. Nov 2004 09:29

Re: Firebird -->Create table
 
kann zeos das nicht, informationen der datenbanken ausgeben?

Domo Sokrat 1. Nov 2004 12:37

Re: Firebird -->Create table
 
Zitat:

Zitat von ibp
kann zeos das nicht, informationen der datenbanken ausgeben?

Doch! Sogar ziemlich komforatbel! Und zwar über eine ZSQLMetadata-Komponente (die ich in meinem Tuto leider ein wenig vernachlässigt habe :stupid: ). Du mußt lediglich ein ZSQLMetadata (z. B.) auf Deiner Form plazieren und dieses mit Deiner ZConnection verbinden. Anschließend setzt Du die Property MetadataType auf "mdColumns", um die Spaltendaten der Tablle zu bekommen, die Du im Property TableName angibst. Wird ZSQLMetadata nun aktiviert (Active := true), dann wird ein Resultset erzeugt, das alle Spaltendaten der angegebenen Tablle enthält 8) .

Mach' Dir mal den Spaß und plaziere noch ein TDBGrid und ein TDataSource auf der Form und verbinde das DBGrid über die DataSource mit dem ZSQLMetadata. Nun kannst Du im Grid sehen, welche Infos im Resultset als Metadaten zur Verfügung gestellt werden :cyclops: .

Du kannst Dir ZSQLMetadata wie eine Art TTable vorstellen, die Metadaten der Datenbank enthält. Spiele einfach mal ein wenig mit den Properties von ZSQLMetadata rum und Du wirst sehen, wie einfach es ist, die gewünschten Metadaten zu erhalten.

:shock: Vorsicht :!: beim Einsatz von ZEOS in Version 6.1.5! Hier kann es im ZSQLMetadata gelegentlich zu ungereimtheiten kommen. ZSQLMetadata-Kompo ist erst in Version 6.5 von diesen Fehlern befreit.

So! Ich hoffe, das hilft ein wenig weiter.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:33 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz