Laden...
T
Tom myCSharp.de - Member
Datawarehouse Architect / Business Intelligence Specialist Home is where my notebook is Dabei seit 16.06.2006 433 Beiträge

Forenbeiträge von Tom Ingesamt 433 Beiträge

30.06.2006 - 10:41 Uhr

Wenn du den Rechnernamen änderst kommt doch eh ne Meldung das du neustarten sollst.
Wolltest da gleich weitermachen? 😉

Gruss,
Tom

28.06.2006 - 23:33 Uhr

Hab mir deine Anwendung mal runtergezogen und ich glaub ich verstehs solangsam.

Also es ist so. Du möchtest deine Anwendung einfach auf einen Rechner packen, dort ausführen und alles soll laufen.
Und du brauchst eine Datenbank.

Was du jetzt aber bisher gemacht hast, geht davon aus das am Client eine SQLExpress Instanz schon läuft. Siehe auch Bereitstellung von SQL Express Datenbanken

connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Form1.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True"

Das besagt das du deine Datenbank Form1.mdf an den schon vorhandenen SQL Server mit der Instanz SQLEXPRESS einfach dranflanschen willst.

Soll heissen am Client muss eine SQLExpress Datenbank (die SQLEXPRESS Instanz ist der Standardinstanzname) schon installiert sein. Muss halt jemand händisch machen.

Nu sehe ich aber das du derzeit nicht viele Daten zur Anzeige bringen willst (ID, Vorname, Nachname).
Bei so kleinen Datenmengen empfiehlt es sich wirklich ein paar Gänge herunterzuschalten.

Also, die Frage lautet was möchtest du mit deiner Anwendung erreichen.
Soll die irgendwann mal so aufgebohrt werden das du einen SQL Server brauchst?
Willst du dich einfach so mit SQL Server beschäftigen, oder besagen die Anforderungen die Nutzung einer SQL Datenbank voraus?

--> Wenn 'ja' dann so lassen und halt noch den SQLExpress mitgeben.

Wenn du aber nicht so nen overkill machen möchtest solltest du dich entweder mit SQL Everywhere oder aber mit Access oder sogar einer normalen Datei auseinandersetzen.

Für paar Spalten reicht ne normale Datei alle mal. Und wenn du dich mit Access auskennst und eh gerade nix mit den SQL Server machst dann würde ich dir zu Access raten 🙂

Gruss und schöne Nacht,
Tom

28.06.2006 - 23:04 Uhr

Natürlich sollte man Alternativen immer abwägen.
Of macht es ja durchaus Sinn etwas nicht so umzusetzen wie man es sich am Anfang gedacht hatte 🙂

Gruss und schönen Abend,
Tom

28.06.2006 - 23:00 Uhr

Original von Dr.Cool...
Wie setze ich IDENTITY_INSERT auf ON? Und was genau passiert dabei? Wird der Wert dabei immernoch fließend inkrementiert?

SET IDENTITY_INSERT ON

Setzt du dieses Flag kannst du einen Wert für die Identity Spalte festlegen. Aber bei dem obigen Statement würdest du versuchen NULL zu setzen.

Zusätzlich hast du dennoch noch ein Problem das du wissen musst wann deine Identity Spalte in der Tabelle kommt.

Wirst wohl nicht drumherum kommen und Spaltennamen nutzen müssen.

Gruss,
Tom

28.06.2006 - 09:50 Uhr

Ich glaub ich würde da, dass If Konstrukt bevorzugen. Sieht mir alles sehr nach overkill aus 🙂

Gruss,
Tom

28.06.2006 - 09:47 Uhr

Original von FZelle
oder

INSERT INTO Table VALUES ( column1Value, NULL, column3Value )

Dein Statement würde ein Fehler schmeissen.
Die Identity Spalten dürfen AFAIK nur angegeben werden wenn 1. der Spaltenname konkret angegeben wird und 2. IDENTITY_INSERT auf ON steht.

Dr. Cool, mach das wie Noodles angegeben hat. Man sollte eh immer Spaltennamen bei INSERT Statements mit angeben, ausser es spricht etwas definitiv dagegen.

Gruss,
Tom

27.06.2006 - 15:28 Uhr

Hm ... das Problem hatte ich noch nie.
Schon mal ProcessExplorer, DebugView (beide von sysinternals.com) etc ausprobiert?

Gruss,
Tom

27.06.2006 - 06:08 Uhr

Naja über die Vor- und Nachteile divserer Technologien ist sich hier jeder wohl bewusst 🙂

Back to topic!

Um was gehts und was soll genau gemacht werden, Herr Threadersteller?

Morgendlichen Gruss,
Tom

26.06.2006 - 21:39 Uhr

Geben wir der aktuellen Hitzewelle die Schuld ... was ich wegen der heute schon so alles gemacht habe .... tststs 🙂

Gruss und schönen Abend noch,
Tom

26.06.2006 - 19:29 Uhr

Du machst da irgendetwas falsch .... also ich habe jetzt extra noch die 2 Tabellen angelegt und auch Daten reingeklopft. Mein Statement geht definitiv.

Und deine Fehlermeldung lässt darauf schliessen das du keine GROUP BY Clause angibst.

Probier doch mal das Statement im Query Analyzer 🙂

Wie erzeugst du denn dein Statement?

Gruss,
Tom

26.06.2006 - 19:09 Uhr

Wie ich im anderen Thread schon geschrieben habe, würde ich an deiner Stelle mal nach SQL Everywhere schauen.

Wenn du das Problem hier dennoch lösen willst, müsstest du mir mal genau sagen was du machst und was passiert 😉

Welches Statements setzt du ab, und welcher genauer Fehler wird geschmissen?

Für mich hört sich das aktuell so an:

  1. Du kommst auf den SQL Server
  2. Du legst eine neue Datenbank an
  3. Du machst irgendetwas und der SQL Server sagt dir das die Datenbank mit dem gleichen Namen schon existiert?

Wir wollen Fakten, Fakten Fakten 😉

Gruss,
Tom

26.06.2006 - 19:04 Uhr

Ähm was für einen SQL Server benutzt du denn? 😉

Geht das Query nicht oder kommt was falsches zurück?

Bei mir läuft zumindest das Query (benutze SQL Server 2000 Dev)

Genauer Fehler wäre interessant 🙂

26.06.2006 - 18:45 Uhr

Kommt halt immer auf das Einsatzgebiet drauf an.
Aber schon allein wegen Transaktionsgesteuerte Statements würde ich zu nen richtigen SQL Server tendieren. (Also SQL Express, SQL-Everywhere oder was auch immer)

Ich bin kein Fan von Access 😉

[Edit]
Ah jetzt kapier ich das mit dem anderen Thread 😉

Also wie es aussieht möchtest du unkompliziert auf den Clients eine Datenbank benutzen. Wenn das ganze ein etwas 'kleineres' Projekt ist, würde ich dir nicht den SQL Server Express dafür empfehlen. Der trägt sich ja komplett als Windows Service ein. Und wenn mir ein komplett so n Teil unterjubeln will bloss um ein paar Sachen zu machen, würde ich das Ding wohl sofort wieder deinstallieren 😉

Schau mal nach 'SQL Everywhere'. Das sollte so deine Ansprüche abdecken.

Gruss,
Tom

26.06.2006 - 18:42 Uhr

Mit MySQL kenne ich mich leider nicht so gut aus ...
Muss der MySQL Server vllt mal neugestartet werden nachdem du die dll in das Verzeichnis kopiert hast? Oder muss die registriert werden?

Sorry, aber ich glaub ab hier kann ich dir nicht mehr viel helfen.

Gruss,
Tom

26.06.2006 - 18:33 Uhr

Ist zwar schon spät, aber ich versuchs doch mal 😉


SELECT   k.Kundenname, COUNT(k.Kundenname)
FROM     Kunden AS k
         INNER JOIN Bestellungen AS b
         ON k.id = b.id
GROUP BY k.Kundenname
HAVING COUNT(k.Kundenname) > 5

Gruss,
Tom

26.06.2006 - 18:19 Uhr

Original von burning snow...

Ist eine ASP.NET Anwendung langsamer als eine Windows Forms Anwendung?

Ich glaube das liegt eher an der Programmierung.
...

Ich finde es kommt auf das Einsatzgebiet drauf an. Ist die Anwendung eher Serverlastig kannst du ohne weiters ASP.NET nehmen. Ist die Anwendung aber sehr Clientlastig empfiehlt es sich schon Windows Forms zu nutzen, da Client Skripts mal 'ultra' langsam sind, bzw. ständig Postbacks durch die Gegend schicken 😉
Gibt natürlich noch andere Vor- und Nachteile die durch die genutzte Technik auftreten.

Aber nähere Informationen zu dem eigentlichen Thema wären wünschenswert. Um was geht es denn genau? Was sind denn die genauen Vorgaben? Und was soll auf dem Client gemacht werden?

Gruss,
Tom

25.06.2006 - 15:57 Uhr

Jep, machen wir genauso.

Gruss,
Tom

25.06.2006 - 11:33 Uhr

Das hab ich auch noch nicht gewusst. Dachte das wäre ein generelles Problem bei VS.NET.

Kommt davon wenn man nur Webapplikationen entwickelt 🙂

Gruss,
Tom

25.06.2006 - 01:01 Uhr

Wir nutzen in der Arbeit auch SVN und ich muss gestehen ich bin begeistert von der einfachen Handhabung.
Wenn du SVN mit Verbindung VS.NET nutzt, benötigst du den 'ASP.NET Hack'. Also den Punkt anstatt Unterstrich (Aber das wirst du ja wahrscheinlich schon wissen)

Zu der Installation gibt es Howtos und Tuts wie Sand am Meer.
Kannst z.B. bei Wikipedia vorbeischaun und dort die Links dazu abgrasen, oder die offizielle Doku http://svnbook.red-bean.com/nightly/en/svn-book.html#svn.intro.install zu rate ziehen.

Ist auch recht einfach zu installieren.

Gruss,
Tom

25.06.2006 - 00:54 Uhr

Dein SQL User den du benutzt, muss natürlich über das Recht verfügen Datenbanken anzulegen.
http://msdn2.microsoft.com/en-us/library/ms403635.aspx - sp_addsrvrolemember - rolename: dbcreator

Gruss,
Tom

24.06.2006 - 13:43 Uhr

Ja du hättest tatsächlich exportieren sollen.
Die SVN relevanten Sachen werden ja immer in den Unterordnern gespeichert (_svn).

Wenn du dein Projekt aber exportierst und anschliessend einfach wieder so reinkopierst, kannst du ganz normal weiterarbeiten.

Gruss,
Tom

24.06.2006 - 13:41 Uhr

Finde deine Lösung nicht schlecht und auch super das du die hier abschliessend präsentierst.

Schönes Wochenende 🙂

Gruss,
Tom

23.06.2006 - 20:49 Uhr

Security Stored Procedures (Transact-SQL)

Stichwort: sp_addlogin

Gruss,
Tom

23.06.2006 - 20:42 Uhr

Ich kenn keine Möglichkeit Daten einer DataTable mit den Tabellen des SQL Servers direkt 'zu verbinden'.

Selbst wenn du am Anfang nen Cursor auf dem Server machst und damit dann am Ende weiterarbeitest, kannst du das bei der Datenmenge vergessen. Da der Cursor mal verdammt langsam sein wird.

Naja ansonsten kannste halt versuchen das Objekt zu serialisieren und dann auffem Server schieben. Aber könntest vom Client nicht gleich direkt auf die Datenbank gehen?

Bei grossen Objekten wirds ja dementsprechend dauern bis die auffem Server sind, etc.

Gruss,
Tom

23.06.2006 - 20:23 Uhr

Kenn mich mit MySQL zwar nicht aus, aber laut http://dev.mysql.com/doc/refman/4.0/de/date-and-time-functions.html gibts die Zeitfunktionen nur innerhalb des Sekundenbereichs.

Könntest ja dort mal schauen ob du etwas 'system näheres' findest.

Gruss,
Tom

22.06.2006 - 20:51 Uhr

Oder du machst den ConnectionString editierbar 🙂

Gruss,
Tom

22.06.2006 - 20:48 Uhr

Kenn mich jetzt nur mit SQL 2000 Server aus, aber du kannst eine temporäre Tabelle anlegen und die Daten dann ganz normal reinschreiben.

  1. Entweder so richtig temporär:
    CREATE TABLE #tollerNamefuereineTabelle .....

Wenn du diese nicht mehr brauchst kannst du die einfach löschen.
Dies geschieht aber auch automatisch wenn die Verbindung getrennt wird.

  1. Oder halt eine normale Tabelle machen und die dann von hand löschen.

Oder spricht etwas dagegen das du einen ganz normalen Select machst?

Verstehe gerade nicht wieso du es so kompliziert machen willst 🙂

Gruss,
Tom

22.06.2006 - 20:40 Uhr

Es ist nicht verkehrt die Lösung dennoch hier reinzuposten.
Evtl andere die das gleiche Problem haben, könnten so auch davon profitieren.

Gruss,
Tom

22.06.2006 - 20:38 Uhr

Was genau heisst für dich das du die 'Datenbank Sicherung wiederhergestellt' hast?
Ist die Sicherung vom gleichen SQL Server, oder ist die Sicherung von einem anderen?
Und ist das ganz normal über ein Datenbank Backup eingespielt worden oder ist das ganze System gecrasht?

Das Problem bei den Sicherungen ist das die Zuordnung zu den Benutzern über SIDs geregelt wird. Und wenn diese nicht übereinstimmen, kennt der Server den Benutzer nicht, auch wenn der Benutzername übereinstimmt.

Ich würde mal den Benutzer bei der Datenbank rauswerfen und neu zuordnen.

Gruss,
Tom

18.06.2006 - 18:05 Uhr

Nur mal ne kurze Info, da ich mich derzeit auch bissi mit MS Zertifizierungen herumschlage 🙂

Q. What should I do if I'm currently an:
MCSD or MCAD? Your credentials continue to be recognized by Microsoft, and you do not need to do anything to maintain them. Upgrade options for the new Visual Studio 2005 credentials will be available for those who are currently certified as either MCAD or MCSD in Microsoft Visual Studio .NET. If you are an MCAD, you can choose an upgrade path to the new MCPD: Web Developer or MCPD: Windows Developer credential; this upgrade requires one exam. If you are an MCSD in Visual Studio .NET, you can upgrade to the new MCPD: Enterprise Applications Developer; this upgrade requires two exams. These upgrade paths waive the prerequisite of having to earn Technology Specialist credentials. The upgrade exams for Professional Developer credentials will be available in early to mid-2006.

Quelle: http://www.microsoft.com/learning/mcp/newgen/faq/

Also es gibt die Möglichkeit zu den neuen MCST / MCPD Zertifizierungen 'upzugraden'.

Natürlich geht hierbei wohl auch etwas Wissen von den anderen neuen Examen durch die Lappen. Aber man muss die Prüfungen nicht komplett neu ablegen.

Gruss,
Tom

16.06.2006 - 12:26 Uhr

Kein Thema, die verfluchten Dinger müssen ja irgendwo liegen 🙂

Schönen warmen Tag!

Tom

16.06.2006 - 10:07 Uhr

Du musst in der Kommandozeile auf das Verzeichnis zugreifen, im Explorer wird zur Anzeige getrickst.


C:\WINDOWS\assembly>dir
 Datenträger in Laufwerk C: ist System
 Volumeseriennummer: C8D8-9FD9

 Verzeichnis von C:\WINDOWS\assembly

07.06.2006  23:48    <DIR>          GAC
18.04.2006  19:41    <DIR>          GAC_32
18.04.2006  19:42    <DIR>          GAC_MSIL

Die Verzeichnisse müsstest du auf jedenfall haben.