Zum Inhalt springen

Borinator

Mitglieder
  • Gesamte Inhalte

    18
  • Benutzer seit

  • Letzter Besuch

  1. Ich entschuldige. Ich arbeite mit dem Microsoft SQL Server 2008.
  2. Hallo zusammen, seit kurzem versuche ich eine Procedur zu schreiben, die den Sequenzzähler erhöht. Create Proc setnumber @ID AS INT AS UPDATE TBLbla SET @ID = NR +=1 Output @ID INTO TBLbla(NR) Hierbei gibt er mir die Fehlermeldung: Die 'TBLbla'-Zieltabelle der OUTPUT INTO-Klausel darf sich auf keiner Seite einer (Primärschlüssel-Fremdschlüssel-)Beziehung befinden. Die Verweiseinschränkung 'fk_blabla_1' wurde gefunden. Kann mir da einer bitte weiterhelfen:( Ich hätte noch eine kleine Frage undzwar versuche ich noch eine Funktion zu schreiben, die diese Procedur aufruft und den neuen Wert zurückliefert. Bei meinen Versuchen meckert er immer "mehrteiliger Bezeichner konnte nicht gebunden werden" . Da bin ich ebenso ratlos:(
  3. Danke für die Hilfe. wie müsste ich mir das mit der syntax vorstellen??? Ich würde jetzt sowas machen... Create TRIGGER TBLFAHRTEN_BIO ON TBLFAHRTEN FOR Insert AS Select * from inserted begin IF(inserted = NULL) inserted = 0 IF..... end Falls es komplett falsch, entschuldige ich mich.Ich habe bis jetzt gaaaaanz wenig mit MSSQL gearbeitet habe.:confused:
  4. Hallo zusammen, ich danke schonmal für jede Hilfe im vorraus. Ich hab einen Trigger unter Firebird, der so aussieht Create TRIGGER TBLFAHRTEN_BIO FOR TBLFAHRTEN ACTIVE BEFORE INSERT POSITION 0 AS begin IF(new.nr is NULL) Then new.nr = 0; IF..... end Jetzt wollte ich das selbe für den MSSQL server2008 umsetzten. Nur leider weiß ich nicht mehr welches Schlüsselwort NEW ersetzen könnte. Der Trigger soll einfach in einer Spalte Null durch numerisch 0 ersetzen.
  5. Guten Morgen zusammen, ich wäre sehr dankbar wenn mir einer helfen könnte. Ich habe folgendes Problem: Ich habe all meine Sql Anweisungen zum erstellen von Tabellen und Views in eine .sql-Datei gepackt(Anweisungen in Editor kopiert und als *.sql abgespeichert) Nun will ich eine Batch schreiben, welches mir die 4 *.sql - Dateien aufruft und nacheinander im MSSQL-2008 Server ausführt. Mein Batch kann die 4 Dateien in mssql server aufrufen, aber ich bin nicht in der Lage sie auszuführen. Vielleicht kann einer von euch mir weiterhelfen. Gruss
  6. Hallo zusammen, ich hoffe ihr könnt mir helfen komme hier seit einigen tagen nicht weiter. Ich danke schonmal für jede Hilfe im vorraus. Public Sub Ankoppeln() Dim db As Database Dim r As Recordset Dim t As TableDef Set db = Connect ' Konfigdaten kopieren: tblArt, tblZeitRaster With db .Execute "DELETE FROM public.TBLART", dbFailOnError .Execute "DELETE FROM public.TBLZEITRASTER", dbFailOnError End With With CurrentDb .Execute "INSERT INTO public.TBLART ( Nr, strArt, Wichtung, DataCollectLaenge, InKFZ, InKFZEinzel, InLKW, InHandZaehlung, InKnotenAuswahl, AvgInSummenBildung, Bemerkung ) SELECT tblArt.Nr, tblArt.strArt, tblArt.Wichtung, tblArt.DataCollectLaenge, tblArt.InKFZ, tblArt.InKFZEinzel, tblArt.InLKW, tblArt.InHandZaehlung, tblArt.InKnotenAuswahl, tblArt.AvgInSummenBildung, tblArt.Bemerkung FROM tblArt;", dbFailOnError .Execute "INSERT INTO public.TBLZEITRASTER ( Dauer, Zeit ) SELECT tblZeitraster.Dauer, tblZeitraster.Zeit FROM tblZeitraster;", dbFailOnError End With ' Die Tabellen einbinden Set db = CurrentDb db.TableDefs.Refresh Set r = db.OpenRecordset("@TabellenDefinition", dbOpenDynaset, dbSeeChanges) Do Until r.EOF If var2str(r!OracleName) <> "" Then On Error Resume Next Set t = Nothing Set t = db.TableDefs(r!name) On Error GoTo 0 If Not t Is Nothing Then If var2str(r!ConnectACCESS) <> "" Then If Left$(t.Connect, Len(DATABASE_ODBC_CONNECTSTRING)) <> DATABASE_ODBC_CONNECTSTRING Then r.Edit r!ConnectACCESS = t.Connect r.Update End If End If db.TableDefs.Delete r!name End If Set t = db.CreateTableDef t.name = r!name t.Connect = DATABASE_ODBC_CONNECTSTRING & ConnectString & ";" & "TABLE=" & r!OracleName t.SourceTableName = r!OracleName db.TableDefs.Append t //hier taucht ein fehler auf End If r.MoveNext DoEvents Loop db.TableDefs.Refresh End Sub Da taucht mir bei der kommentiereten Stelle folgender Fehler auf: Laufzeitfehler: 3021 Kein aktueller Datensatz Ich hoffe ihr könnt mich da ein bisschen näher zum ziel bringen.
  7. Danke das ist schonmal ein guter Anfang für mich^^ Wie schon gesagt bin ein neuling in VBA, habe zwar einige Skripte für Excel geschrieben aber das wars auch. Wie kann ich die Daten jetzt aus der einen Datenbank lesen und in die andere schreiben. Danke nochmals für die Hilfe Gruss
  8. Hallo zusammen, ich danke schon mal im vorraus für jede Hilfe. Ich muss aus einer Access Datenbank die Daten in eine Firebird fdb portieren mittels VBA. Ich hab auch schon rumgegooglet und rausgefunden das ich das mit ODBC machen kann, habe aber noch nie mit ODBC gearbeitet. Mein Problem ist das ich nicht weiß wie ich vorgehen soll und wie und wo ich anfangen kann. Gruss
  9. Hallo zusammen, ich hab eine kleines Problem undzwar schreibt mir der SQLServer2008 vor jeder Tabelle,Sicht und Funktion das Standardschema dbo z.B. dbo.TBLtest. Jetzt hat aber das Unternehmen Module für viele Datenbanken um die Inhalt zu portieren. Mein Problem liegt daran das dann die Module die Tabellen von MSSQL garnicht sieht, da dieser nur unter TBLtest sucht und nicht unter dbo.TBLtest. Gibt es da eine Möglichkeit das Schema zu deaktivieren, sodass wenn ich eine Tabelle erzeuge die unter TBLtest2 gespeichert wird und nicht dbo.TBLtest2?????? Ich wäre für jede Hilfe seeeeeeeeeeeeeeeeeeeeeehr dankbar Gruss
  10. Borinator

    PostgreSQL

    Danke für die Antwort, aber es lag nicht daran. Ich hatte 2 semikolon vergessen gehabt und meinen 2. befehl kannte der nicht.
  11. Hallo zusammen, ich hoffe ihr könnt mir helfen. Aber Erstmal danke schonmal für die Hilfe. Ich habe eine Funktion "Formatdate" die 2 parameter bekommt. 1. Das Datum aus einer Zelle 2. YYYY(JAHR) , MM(MONAT) oder YYYYMM(JAHRMONAT) Sie liest dann aus dem Datum halt dann das Jahr, monat oder jahrmonat und gibts zurück. CREATE OR REPLACE FUNCTION formatdate(datum varchar, str varchar) RETURNS varchar AS $BODY$ DECLARE out VARCHAR; BEGIN IF str = 'YYYY' THEN out = to_char (datum, 'YYYY') ......... END IF; END $BODY$ LANGUAGE 'plpgsql' VOLATILE COST 1; Die Funktion funktioniert so nicht aus irgendeinem grund den ich nicht kenne.
  12. HI ich muss ja schon sagen du antwortest in rekordzeit:D wenn ich dich richtig verstanden habe müsste meine Order By Klausel folgendermaßen aussehen: GROUP BY VonKnotenNr, NachKnotenNr, dbo.VZA_NUMBER(dbo.VZA_FORMATDATE(ZaehlDatum,'YYYY')) , dbo.VZA_NUMBER(dbo.VZA_FORMATDATE(ZaehlDatum,'MM')) , dbo.VZA_NUMBER(dbo.VZA_FORMATDATE(ZaehlDatum,'YYYYMM')), tblArtNr, CAST(dbo.VZA_FORMATFLOAT(VonKnotenNr, '00000000000') | dbo.VZA_FORMATFLOAT(NachKnotenNr, '00000000000') | dbo.VZA_FORMATDATE(ZaehlDatum, 'YYYY') | dbo.VZA_FORMATFLOAT(tblArtNr,'0000') AS VARCHAR(100)) , CAST(dbo.VZA_FORMATFLOAT(VonKnotenNr, '00000000000') | dbo.VZA_FORMATFLOAT(NachKnotenNr, '00000000000') | dbo.VZA_FORMATDATE(ZaehlDatum, 'YYYY') AS VARCHAR(100)) ; Ich habs ausprobiert. Ich kriege jetzt keine Fehlermeldung, aber du kennst das sicher keine Fehlermeldung heißt ja nicht das es keine fehler gibt^^ Ich muss erstmal die Datenbank austesten, ob alles so funktioniert wie es sein soll. Ich danke dir VIELMALS für deien Hilfe du hast mich viel weiter gebracht. :uli
  13. Danke erstmal für die schnelle Antwort. Ich teile meiner Funktion schon mit woher er die daten kriegt. Ich habe eine Sicht geschrieben in der meine Funktion aufgerufen wird, aber leider kommt immer beim ausführen die Fehlermeldung ungültig spaltenname 'Jahr', 'Monat' usw. also praktisch dort wo meine Funktion aufgerufgen wird entstehen die Fehler. CREATE VIEW QBSUMMENMONAT_2 ( VONKNOTENNR, NACHKNOTENNR, JAHR, MONAT, JAHRMONAT, TBLARTNR, SORTER, SORTEROHNEART ) AS SELECT VonKnotenNr, NachKnotenNr, dbo.VZA_NUMBER(dbo.VZA_FORMATDATE(ZaehlDatum,'YYYY')) AS JAHR, -- hier wird dann die erste funktion aufgerufen und in Jahr gespeichert dbo.VZA_NUMBER(dbo.VZA_FORMATDATE(ZaehlDatum,'MM')) AS MONAT, dbo.VZA_NUMBER(dbo.VZA_FORMATDATE(ZaehlDatum,'YYYYMM')) AS JAHRMONAT, tblArtNr, CAST(dbo.VZA_FORMATFLOAT(VonKnotenNr, '00000000000') | dbo.VZA_FORMATFLOAT(NachKnotenNr, '00000000000') | dbo.VZA_FORMATDATE(ZaehlDatum, 'YYYY') | dbo.VZA_FORMATFLOAT(tblArtNr,'0000') AS VARCHAR(100)) AS Sorter, CAST(dbo.VZA_FORMATFLOAT(VonKnotenNr, '00000000000') | dbo.VZA_FORMATFLOAT(NachKnotenNr, '00000000000') | dbo.VZA_FORMATDATE(ZaehlDatum, 'YYYY') AS VARCHAR(100)) AS SorterOhneArt FROM tblStreckenSummeTag GROUP BY VonKnotenNr, NachKnotenNr, JAHR, --hier kommt dann die fehlermeldung ungültige spaltenname und für die nächsten SPalten auch MONAT, JAHRMONAT, tblArtNr, Sorter, SorterOhneArt; Ich scheiter gerade nur an diesem view alles andere funktioniert einwandfrei soweit ich das sehe^^
  14. Hallo zusammen, ich danke schonmal im voraus an alle helfenden. Folgendes Problem: Das ist meine FUnktion ALTER FUNCTION dbo.VZA_FORMATDATE (@datum AS DATETIME, @str as varchar(254) ) RETURNS VARCHAR(254) AS BEGIN DECLARE @out as varchar(254) if @str = 'YYYY' set @out = convert(varchar(4), @datum, 112) if @str = 'MM' set @out = CONVERT(varchar(2), @datum, 10) if @str = 'YYYYMM' set @out = convert(varchar(6), @datum, 112) return @out END Den FUnktionsaufruf habe ich mir so vorgestellt. dbo.VZA_FORMATDATE(ZaehlDatum,'YYYY') Das Problem ist das meine Funktion nicht auf 'Zaehldatum' zugreifen kann. Die Funktion erwartet einen manuel eingegebenes Datum für die Variable @datum. Ich will aber das sich die Funktion das datum selber aus einer spalte nimmt die ich ihm vorgebe. Verbesserungsvorschläge nehme ich gerne für meine Funktion an^^ Ich bin in MSSQL noch ein anfänger habe mich erst seit 2 wochen da eingearbeitet:D
  15. DANKKKEEEEEEE für die schnelle Antwort.... Hab jetzt die Datentypen geändert und nun tut es auch danke sehr:uli

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...