Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi datenbank serverdatum (https://www.delphipraxis.net/105816-datenbank-serverdatum.html)

Gonso 30. Dez 2007 21:26

Datenbank: mysql mssql • Zugriff über: bde odbc

datenbank serverdatum
 
wie kann ich das aktuelles serverdatum, wo sich eine datenbank befindet abfragen?

mein programm kennt nur ODBC-Name und die Info- mysql oder mssql datenbank (auch datenbankname ist bekannt)

mkinzler 30. Dez 2007 21:36

Re: datenbank serverdatum
 
NOW()

Gonso 30. Dez 2007 21:48

Re: datenbank serverdatum
 
@mkinzler danke

und wie lese ich das aus mit query?

kiar 30. Dez 2007 21:50

Re: datenbank serverdatum
 
moin,

Standard Ist
SQL-Code:
SELECT CURRENT_TIMESTAMP AS ZEIT
raik

Gonso 30. Dez 2007 22:10

Re: datenbank serverdatum
 
@raik danke

Gonso 3. Jan 2008 18:04

Re: datenbank serverdatum
 
ich möchte nur serveruhrzeit zurückbekommen. wie geht das?

mkinzler 3. Jan 2008 18:06

Re: datenbank serverdatum
 
CURRENT_TIME
oder per Frac aus Timestamp extrahieren

Gonso 3. Jan 2008 18:20

Re: datenbank serverdatum
 
@raik hilf mir bitte.
mkinzler muss 20.000 antworten bis morgen schaffen und hat keine zeit für mich.

mkinzler 3. Jan 2008 18:25

Re: datenbank serverdatum
 
Ein bisschen Eigeninitiative sollte das dmachbar sein:
SQL-Code:
SELECT CURRENT_TIME AS ZEIT;

Gonso 3. Jan 2008 18:33

Re: datenbank serverdatum
 
Zitat:

Ein bisschen Eigeninitiative sollte das dmachbar sein:
falsche syntax in der nähe des 'current_time'-schlüsselwortes

hab längst ausprobiert

mkinzler 3. Jan 2008 18:37

Re: datenbank serverdatum
 
Funktioniert das?
SQL-Code:
SELECT EXTRACT ( TIME FROM CURRENT_TIMESTAMP) AS ZEIT;

Gonso 3. Jan 2008 18:39

Re: datenbank serverdatum
 
mssql: nein

mkinzler 3. Jan 2008 18:41

Re: datenbank serverdatum
 
http://www.tsql.de/transact-sql/func...o-datepart.htm

Gonso 3. Jan 2008 18:53

Re: datenbank serverdatum
 
hier bekomme ich nur teile (stunden oder minuten)
ich brauche stunde:minute

mkinzler 3. Jan 2008 18:58

Re: datenbank serverdatum
 
Dann schau dir mal CAST oder CONVERT an

Gonso 3. Jan 2008 19:03

Re: datenbank serverdatum
 
@mkinzler
ich bin gonso. kannst du dir das merken? gut.
antworte bitte nicht mehr, wenn ich fragen habe, ok?
danke

mssql frage: ich möchte nur serveruhrzeit zurückbekommen. wie geht das?

mkinzler 3. Jan 2008 19:06

Re: datenbank serverdatum
 
@gonso: Bitte unterwürfigst um Entschuldigung, dass ich dir helfen wollte.
Ich geb dir aber den Tipp, deine Einstellung zu Ändern.

Gonso 3. Jan 2008 19:09

Re: datenbank serverdatum
 
entschuldigung angenommen.tut mir leid. du kennst die richtige antwort nicht.

frage:
ich möchte nur serveruhrzeit zurückbekommen. wie geht das?

grenzgaenger 3. Jan 2008 19:11

Re: datenbank serverdatum
 
bekommst den timestamp? fall ja, kannst in ja auch in delphi aufbereiten, stichworte hierfür for schleife, pos, delete, copy ... <HTH>

Gonso 3. Jan 2008 19:19

Re: datenbank serverdatum
 
danke grenzgaenger. ja ich bekomme timestamp zurück.
in delphi könnte ich das machen – die funktionen beherrsche ich gut.
ich suche eine antwort auf sql-server ebene.

kiar 3. Jan 2008 23:07

Re: datenbank serverdatum
 
Moin,

habe ne Funktion gefunden
SQL-Code:
CREATE FUNCTION FN_DATETIME_AS_HM (@DT DATETIME)
RETURNS CHAR(5) AS
BEGIN
   IF @DT IS NULL RETURN NULL
   DECLARE @H INT
   DECLARE @M INT
   SET @H = DATEPART(HOUR, @DT)
   SET @M = DATEPART(MINUTE, @DT)
   DECLARE @RETVAL VARCHAR(5)
   IF @H < 10
      SET @RETVAL = '0' + CAST(@H AS CHAR(1))+':'
   ELSE
      SET @RETVAL = CAST(@H AS CHAR(2))+':'
   IF @M < 10
      SET @RETVAL = @RETVAL + '0' + CAST(@M AS CHAR(1))
   ELSE
      SET @RETVAL = @RETVAL + CAST(@M AS CHAR(2))
   RETURN CAST(@RETVAL AS CHAR(5))
END
GO
der Aufruf erfolgt dann so:
SQL-Code:
SELECT dbo.FN_DATETIME_AS_HM(CURRENT_TIMESTAMP)
getestet mit Microsoft SQL Server Management Studio Express. Es funktioniert also auf dem Server.

Raik

Jelly 4. Jan 2008 07:10

Re: datenbank serverdatum
 
Zitat:

Zitat von Gonso
@mkinzler
ich bin gonso. kannst du dir das merken? gut.
antworte bitte nicht mehr, wenn ich fragen habe, ok?

Sag mal, würdest Du das bitte lassen andere Forenmitglieder hier persönlich anzugreifen. Der nächste Beitrag dieser Art wird kommentarlos von mir oder einem anderem Moderator gelöscht.

Du kannst hier nicht erwarten, dass du fertigen Code geliefert kriegst, den du dann einfach via copy&paste übernehmen willst (obwohl kiar das in seinem Beitrag ausnahmsweise gemacht hat). Zu T-SQL gibt es eine hervorragende Dokumentation, wühl dich also ruhig mal nebenbei da durch.

PaulJr 4. Jan 2008 08:36

Re: datenbank serverdatum
 
Sag mal, Jelly
also wirklich…

Zuerst wird der junge, selbstbewusste Mann mit Spam-Pseudo-Wissen zugemühl und jetzt holst Du noch den großen Diktator heraus…
Das kann ja wohl nicht war sein… Zu dieser Spam-Forum Erscheinung werde ich noch ein getrenntes Thema öffnen.

Vielleicht solltest Du auch mkinzler etwas zu seiner Hyperaktivität sagen.

Natürlich kann keiner hier fertige Antworten erwarten… aber, wenn ich die Antwort nicht weiß dann tue ich auch nicht so alles wäre das die einfachste Sache der Welt und die Leute auf falsche Fährte setze.

Und übrigens: Fast zu jedem Problem gibt’s Bücher und wie Du schreibst hervorragende Dokumentationen… na und? Forum ist dazu da um Fragen zu stellen… und wenn jemand nicht will braucht auch nicht zu antworten…

Viele Grüße
Paul Jr.

Jelly 4. Jan 2008 08:57

Re: datenbank serverdatum
 
Zitat:

Zitat von PaulJr
Zuerst wird der junge, selbstbewusste Mann mit Spam-Pseudo-Wissen zugemühl und jetzt holst Du noch den großen Diktator heraus…

Ich spiel hier bestimmt nicht Diktator, aber ich denke der Ton, den Gonso gegenüber mkinzler hier hebte, ist einfach nicht ok. Und was bitte schön hat das mit Spam zu tun.

Zitat:

Zitat von PaulJr
Natürlich kann keiner hier fertige Antworten erwarten…

mkinzler hat doch alle Stichworte geliefert: DatePart, Cast... Was wird denn noch mehr velangt. Es kann nicht von jedem erwartet werden, sich so wie kiar ins Zeug zu legen und eine fertige Funktion zu tippen, die dann nur noch benutzt wird. Wenn ich grad so eine Funktion vorliegen habe (aus einem eigenen Projekt z.B.) dann ja, dann poste ich die auch. Aber zu erwarten, dass ein anderer diese Funktion dann für einen schreibt, nur weil man zu faul ist, in der T-SQL Doku nachzulesen wie DatePart und Cast funktionieren, dann finde ich, ist das zu wenig Eigeninitiative, die gezeigt wird.

Zitat:

Zitat von PaulJr
aber, wenn ich die Antwort nicht weiß dann tue ich auch nicht so alles wäre das die einfachste Sache der Welt und die Leute auf falsche Fährte setze.

Sorry, aber auch da muss ich mkinzler in Schutz nehmen. Er weiss vielleicht nicht auf Anhieb die Verwendung von DatePart oder Cast oder was auch immer. Aber er nannte die richtigen Stichworte, und damit sollte erstmal Gonso rumexperimentieren, und nicht ein anderer.

hoika 4. Jan 2008 09:47

Re: datenbank serverdatum
 
Hallo,

Jelly hat Recht,

wenn ich Stichworte bekomme, nach denen ich suchen kann,
ist das auf jeden Fall besser, also gar keine Antwort.


Heiko

PaulJr 4. Jan 2008 10:04

Re: datenbank serverdatum
 
Hallo Jelly,

natürlich Deine Arbeit als Moderator ist nicht leicht und ich persönlich mag Deine Art (starke Hand).

Allerdings hier vertrete ich eine andere Position.

Wie ich schon sagte, ich werde demnächst ein Thema zu dieser Thematik öffnen…

Bis so weit ist… Gruß

Paul Jr.

Hansa 4. Jan 2008 10:22

Re: datenbank serverdatum
 
Der Thread dürfte sowieso versaut sein 8) (allerdings schon durch Fragesteller !).

Zitat:

Zitat von PaulJr
..Zuerst wird der junge, selbstbewusste Mann..

Sein Selbstbewußtsein äußert sich allerdings lediglich in der Form, eine Lösung auf dem Silbertablett offensichtlich nicht umsetzen zu können. Könnte auch Faulheit sein. :mrgreen: Und zur Vertuschung dieser Tatsache wird noch der Versuch unternommen andere Forenmitglieder zu beleidigen, nur weil sie sein Programm nicht komplett für ihn schreiben. So gehts wirklich nicht.

hoika 4. Jan 2008 10:42

Re: datenbank serverdatum
 
Hallo,

und um das hier zu Beenden und die zu Anfang
ja doch interessante Frage zu beantworten

SQL-Code:
select cast(datepart(hh, getdate())as char(2))
+':' + cast(datepart(n, getdate()) as char(2))
Getestet unter sql2005.
Statt getdate() geht natürlich auch current_timestamp,
ist nur länger zum Tippen ;)


1. Link ansehen
datepart(hh, getdate()) für Stunden
datepart(n, getdate()) für Minuten

2. Hinweis auf cast beachten
cast (bla as char(2))

3. Das ganze zusammensetzen

Der Cast ist übrigens zwingend notwendig,
weil datepart ein Integer zurückliefert und
der SQL-Server beim + versucht Int's zu addieren.
das schlägt natürlich fehl (ist ja noch der Doppelpunkt zwischen)


Heiko

Gonso 4. Jan 2008 21:10

Re: datenbank serverdatum
 
@raik danke – bist der beste

@Heiko danke – möchte auch mal so gut sein wie du und raik und @omata (danke paul jr.)

hoika 5. Jan 2008 08:16

Re: datenbank serverdatum
 
Hallo,

ich arbeite nicht mit mssql,
bin einfach nur die Links von mkinzler nachgegangen.


Heiko
PS: Na gut, drauf ist die 2005er Express schon,
aber nur so zum Spielen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:14 Uhr.

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