mysqld[13666]: 070128 17:32:11 /usr/sbin/mysqld: unknown variable 'mod 0600 .my.cnfmax_allowed_packet=16M'
Durch ein einfaches auskommentieren, konnte ich jetzt die DB starten, nur sauber gelöst ist was anderes.
Habe gerade nochmal nachgelesen und es scheint wirklich so, dass ohne Login jeder in die Datenbank schauen könnte.
Habe auchmal bei sqlite geschaut, da sieht es aber identisch aus. Hintergrund ist halt, dass ich etwas mit dem Builder machen muss, was an unterschiedliche Leute geht, wo aber sehr sensible Daten drin stehen.
Kennt jemand von Euch vielleicht eine Datenbank-Oberfläche, die man ählich dem Firebir durch kopieren weitergeben kann, die Daten aber nicht einsehbar sind ?
Lg Carsten
hm .. ja ich muss die SP machen, weil er (arbeitskollege) die für ein Webservice braucht .. er hat einfach gesagt, das die SP mit einen wert zurückgibt 0 für OFF und 1 für ON .. oder so -.-
soooo ... ich habs .. hab einen arbeitskollegen gefragt ^^
das is die SP:
ALTER PROCEDURE [dbo].[spShowUserIsON]
@user varchar(10),
@date datetime
AS
BEGIN
IF EXISTS (SELECT dbo.Registrierung.Kennung
FROM dbo.Registrierung INNER JOIN dbo.MenueListe ON
dbo.Registrierung.ML_ID = dbo.MenueListe.ID
WHERE (dbo.Registrierung.Kennung = @user) AND
(dbo.MenueListe.Datum = @date))
select distinct '1' as 'angemeldet' from dbo.Registrierung
else
select distinct '0' as 'angemeldet' from dbo.Registrierung
END
Mit einem Self-join geht das
select t1.var1, t1.var2
from tab t1
join tab t2
on t1.var1 = t2.var2
and t1.var2 = t2.var1
Ungetestet und ohne Garantie.
Tntnet
Mit MSSQL 2000 kannst du auch Transaktionen über mehrere Server machen.
Musst sie nur im Serveragent registrieren und kannst dann in den Abfragen die Server mit verwenden.
Die Transaktionen können allerdings nicht verschachtelt werden.
Ansonsten kann man das natürlich auch Clientseitig lösen.
Kann man irgendwie bei Access von einer Datenbank prüfen, ob eine andere geöffnet ist oder am besten gleich von der einen die andere schließen?
Ist das irgendwie möglich.
Bin dankbar für jede Hilfe
Danke
MFG
frenki schrieb:
Bei meiner Datenbank geht:
select * from blah where datumsfeld > current date - 3 months
... was aber wohl das falsche Ergebnis liefert :p
Das liefert alle blah's, die jünger als 3 Monate sind. Aber das läßt sich ja leicht korrigieren :
select * from blah where datumsfeld < current date - 3 months
Dieser Thread wurde von Moderator/in phlox81 aus dem Forum Andere GUIs - Qt, GTK+, wxWidgets in das Forum Datenbanken verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?
Dieses Posting wurde automatisch erzeugt.
Und eh. eigentlich falsches Forum... Das hat man nu davon, wenn man über das DB Forum (FAQ^^") nach nützlichen links schaut.
Verschieben nach "C# & .NET" wäre wohl ganz nett
eclipse cdt kenn ich nicht, aber ich würde das compiler faq lesen (da liegt ja ein gcc drunter, oder?)
und ja, in der dokumentation steht, wie man eine testdatenbank anlegen kann (folge den oberen link), damit man was zum spielen hat.
da gibt es mehrere möglichkeiten, wie ich in der doku sehe.
und noch was ich glaube ich geh euch langsam auf die nerven^^
so nun versuche ich was in eine Tabelle zu schreiben (insert)
ich bekomme die Fehlermeldung Mysql server has gone away ...
hab auf mysql.com geschaut aber da steteht nur dass das kommt wenn keine verbindung da ist oder die verbindung geschlossen wurde ... was ich aber nicht gemacht habe!!
was mache ich falsch?
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include "C:\MySQL\include\mysql.h"
MYSQL *my;
void check_error(void) {
if (mysql_errno(my) != 0) {
fprintf(stderr, "Fehler: %s\n", mysql_error(my));
exit(EXIT_FAILURE);
}
}
int main () {
// Handle
my = mysql_init(NULL);
if(my == NULL) {
fprintf(stderr, " Initialisierung fehlgeschlagen\n");
return EXIT_SUCCESS;
}
// verbindung mit server
if( mysql_real_connect(my, "localhost", "root", "root", NULL, 0, NULL, 0))
{
printf("Fehler");
} else {
printf("Erfolgreich mit dem MySQL-Server verbunden\n");
}
// mysql code
char *argument;
argument = "INSERT INTO `test` `id`='1'";
mysql_real_query(my, argument, strlen(argument));
check_error();
// verbindung trennen
mysql_close (my);
return EXIT_SUCCESS;
}
Vielen Dank erst einmal, habe selber noch einmal im Internet gesucht und folgenden Beitrag dazu gefunden.
http://www.asphelper.de/tip/tip23_id_des_zuletzt_eingefuegten_datensatzes_ermitteln.asp
So also wenns jetzt noch jemand interessiert, ich hab mal ne Messung gemacht (allerdings ist das keine "professionelle" Messung, die alle bzw. unterschiedliche Umstände usw. berücksichtigt, sondern ziemlich quick&dirty aber für mein Ziel ausreichend genug, deshalb schreib ich hier auch keine genauen Zahlen rein).
Also ich hab ne mittelgroße Tabelle mit 1000 Einträgen genommen. Wenn ich darauf nur ein Select Count(*) ausführe, dann ist das hier bei mir etwa um den Faktor 370 schneller als ein normales Select auf dieser Tabelle. Allerdings ist da der zusätzliche Methoden-Overhead und das Umkopieren in C-Strings nicht berücksichtigt, aber man kann das ja dann selbst pi mal Daumen für sich ungefähr einschätzen. Ist übrigens alles noch in der Debug-Version.
Alle ODBC-Treiber, auch für andere Datenbanken, verlangen die Einhaltung spezifischer Konventionen oder die Übergabe entsprechend vereinbarter Strings.
Das ist kein Fehler.