Laden...

Forenbeiträge von Maximus Ingesamt 97 Beiträge

26.10.2006 - 19:22 Uhr

Hallo zusammen,

ich habe folgendes Problem und wäre sehr froh, wenn mir jemand weiterhelfen könnte:

Wie kann ich einen User, der sich mittels des CreateUserWizards auf meiner Website anmeldet, sofort einer bestimmten Rolle zuordnen?
Bisher werden die bei mir ohne eine Rollenzugehörigkeit angelegt.
Muss dafür etwas bestimmtes in der web.config stehen`?

Danke für Eure Hilfe.

Gruß Maximus

25.10.2006 - 07:03 Uhr

Ok.

Kann mir vielleicht trotzdem jemand ein kurzes Codebeispiel geben, denn um mein Java-Script ist es extrem schlecht bestellt.

Besten Dank im voraus.
Maximus

24.10.2006 - 21:59 Uhr

Hmm,

kannst Du mir ein Beispiel geben, wie das geht?
Habe leider von JS gar keine Ahnung.

Eine Lösung mit .NET 2.0 gibt es nicht?

Gruß
Maximus

24.10.2006 - 20:45 Uhr

Hallo,

ich stehe grade vor folgendem Problem:

Ich öffne mittels einen normalen <INPUT>-Tags ein neues Fenster.
In diesem neuen Fenster, erarbeite ich einen Wert, den ich an eine TextBox im alten Fenster zurückgeben möchte.
Wie kann ich das realiseren?
Kann ich dafür überhaupt den <INPUT>-Tag nehmen?
Wie erfolgt die Rückgabe des Parameters?
Im voraus besten Dank für Eure Hilfe.

Gruß
Maximus

21.10.2006 - 09:31 Uhr

Wir schreiben das Jahr 2006 und es ist der 21. Oktober.
Diesen Tag werde ich mir im Kalender rot markieren, denn
das Problem ist endlich gelöst.

Vielen vielen Dank für Deine unermüdliche Hilfe.
Ich denke, beim nächsten mal wird mir das nicht mehr passieren.

Gruß
Maximus

21.10.2006 - 08:42 Uhr

<?xml version="1.0"?>
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
	<connectionStrings>
		<add name="BundesligaConnectionString" connectionString="Data Source=mssql03.1und1.de;Initial Catalog=*******;Persist Security Info=False; User ID=*****; Password=*******" providerName="System.Data.SqlClient"/>
  </connectionStrings>
	<system.web>
    <anonymousIdentification enabled="false"/>
    <profile>
      <properties>
        <add name="BildGross" type="System.String" allowAnonymous="false"/>
        <add name="BildKlein" type="System.String" allowAnonymous="false"/>
        <add name="Lieblingsmannschaft" type="System.String" allowAnonymous="false"/>
      </properties>
    </profile>
		<authentication mode="Forms" />
		<membership>
			<providers>
				<remove name="AspNetSqlMembershipProvider"/>
        <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="BundesligaConnectionString"/>
			</providers>
		</membership>
    <customErrors mode="Off" />
		</system.web>
</configuration>

Ich finde da nirgendwo einen Verweis zu SQLExpress oder einen Fehler.
Sieht den sonst jemand?

Gruß
Maximus

20.10.2006 - 20:11 Uhr

Leider immer noch Fehler:

Fehler -2147217865
Invalid object name 'dbo181769356.aspnet_SchemaVersions'.

Kann es sein, dass es damit nichts zu tun hat?
Wenn ich "meine" Tabellen in Besitzer dbo umändere kann ich drauf zugreifen.
Nur die Userverwaltung scheint zu spinnen.

Gruß Maximus

20.10.2006 - 19:58 Uhr

Nein,

geht nicht:

Fehler -2147217865
Invalid object name 'master.dbo181769356.sysdatabases'.

Scheint auch damit nichts zu tun zu haben, denn wenn ich "meine" Tables auf Benutzer dbo umstelle, funktioniert es trotzdem.
Nur die *$%&% Mitgliederverwaltung will nicht laufen. 😦
Noch einen Tip?

Ich verzweifel hier noch.

Gruss
Maximus.

20.10.2006 - 19:48 Uhr

Definitiv,

jetzt habe ich testweise ein paar Tabellen von dbo in dbo11223344 geändert, nur um die folgende Meldung zu bekommen:

Invalid object name 'dbo.aspnet_Applications'.
Invalid object name 'dbo.aspnet_Users'.
Invalid object name 'dbo.aspnet_Membership'

Scheint wohl so als wäre das nicht der Fehler gewesen.
Sonst noch eine Idee?

Gruß
Maximus!

20.10.2006 - 18:53 Uhr

So, jetzt müsste es doch fast geschafft sein:

Mittels aspnet_regsql.exe -sqlexportonly c:\membership.sql -A all -d dbname -S servername -U user -P password konnte ich einen SQL-File erzeugen der sich fehlerfrei mittels Query Analyser auf die Server Datenbank übertragen lies.
Ich kann sogar schon einmal einen Benutzer anmelden, danach kommt aber die Meldung _The SSE Provider did not find the database file specified in the connection string. At the configured trust level (below High trust level), the SSE provider can not automatically create the database file. _ wieder.

Was mich wundert: Bei den Datenbanken, die ich erstellt haben steht als Besitzer dbo11223344 während bei den importierten Datenbanken als Besitzer nur dbo steht. (siehe Bild)

Ist das vielleicht der Grund für die Fehlermeldung?

Gruß
Maximus

20.10.2006 - 12:40 Uhr

Jetzt bin ich ein Stück schlauer:

Während auf meinem lokale Rechner SQl Server 2005 läuft läuft auf dem 1&! Server noch SQL Server 2000!

Daher kann ich die SQL-Datei auch nicht importieren.
Weiß jemand, ob eine Möglichkeit gibt, eine MDF-Datei (Server 2005) in das SQL-Server 2000 Formuat umzuwandeln?

Gruß
Maximus!

19.10.2006 - 22:20 Uhr

Nein,
anscheinend läßt 1&1 keinen Zugriff auf die Datenbank von außen zu.

Die web.config scheint zu stimmen, jedenfalls kann ich alle Aktionen ausführen, die nichts mit der Benutzeranmeldung zu tun haben.

Ich werde verrückt. Jetzt versuche ich das schon geschlagene 3 Tage.
Würde es Dir etwas helfen, wenn ich Dir die ASPNETDB.MDB zusende, oder was auch immer?
Die Verzweiflung ist mittlerweile groß! 😦

Gruß Maximus

19.10.2006 - 20:40 Uhr

Hallo Jörg,

danke für Deine unermüdliche Mühe.

Ich konnte einen SQL-File erstellen den ich auch, nachdem ich überall @dbname = N'ASPNETDB' durch @dbname = N'db181769356' ersetzt habe.

Nun kommt aber immer die folgende Meldung:

_The SSE Provider did not find the database file specified in the connection string. At the configured trust level (below High trust level), the SSE provider can not automatically create the database file. _

Was ist das nun schon wieder?
Es hat doch lokal alles funktioniert. 😦

Gruss
Maximus

19.10.2006 - 14:43 Uhr

Okay, aber wie bekomme ich nun ganzen Tabellen und Stored Procedures in die neue Datenbank?
Die liegen ja bisher nur als ASPNETDB.MDF vor. Womit kann ich soeine Datei öffen um die Daten auf die Datenbank des Webservers zu exportieren?

Gruss
Maximus.

Danke Für Eure Hilfe.

18.10.2006 - 23:29 Uhr

Das habe alles so umgesetzt,
ich glaube aber den Fehler gefunden haben, (wenn auch nicht die Lösung dazu´):

Etwas weiter unten steht dann noch:

<membership>
			<providers>
				<remove name="AspNetSqlMembershipProvider"/>
				<add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="LocalSqlServer" minRequiredPasswordLength="5" minRequiredNonalphanumericCharacters="0" passwordStrengthRegularExpression=""/>
			</providers>
		</membership>

Ich denke, dass da der bei LocalSqlServer liegt.
Muss ich das auf den ConnectionString setzen, den ich oben deklariert habe?

Bisher wurden die Membershipdaten in der Datei ASPNETDB.MDF verwaltet. Wie bekomme ich nun diese Infos zum Webserver?
Womit kann man MDF-Datein überhaupt öffnen?

Und sorry, dass ich mich so doof anstelle. 😦

Gruss
Maximus!

18.10.2006 - 22:15 Uhr

Nein, hat leider auch beides nicht funktioniert.

Hat noch jemand einen Tip?

Gruß Maximus.

18.10.2006 - 21:32 Uhr

Jetzt, habe ich es wie folgt geändert:

		<add name="BundesligaConnectionString" connectionString="server=mssql027.1und1.de; database=db12374433;uid=Benutzername; pwd=Passwort " providerName="System.Data.SqlClient"/>

Die Fehlermeldung bleibt aber.
Hat noch jemand eine Idee?

Gruss
Maximus

18.10.2006 - 20:50 Uhr

Hallo,

ich habe meine Website samt Datenbank erfolgreich auf einen Webserver übertragen und erhalte nun beim Aufruf der Website den folgenden Fehler:

_An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified) _

Hier der Auszug aus der web.config:

	<connectionStrings>
		<add name="BundesligaConnectionString" connectionString="Data Source=mssql027.1und1.de;Initial Catalog=db12374433;Integrated Security=True"  providerName="System.Data.SqlClient"/>
	</connectionStrings>

Wie muss ich den String umstellen, dass es funktioniert?
Fehlt eventuell ein Password o.ä.?
Auf meinem lokalen Rechner hat es wunderbar funktioniert.

Danke für Eure Hilfe.

Gruss Maximus

18.10.2006 - 17:28 Uhr

Hmm,

okay habe ich so gemach.
Der Dump-File hatte folgenden Inhalt:

USE [master]
GO
/****** Objekt:  Database [Bundesliga]    Skriptdatum: 10/18/2006 17:19:41 ******/
IF  EXISTS (SELECT name FROM sys.databases WHERE name = N'Bundesliga')
DROP DATABASE [Bundesliga]

Das habe ich gespeichert, im SQL Server Management Studio wieder aufgerufen und ausgeführt. Und zack ist die Datenbank weg.

Wie bekomme ich die a) wieder her und b) auf die Datenbank auf dem externen Webserver?

Dort kann ich entweder Daten mit der Endund MBD oder BAK importieren.

Gruß
Maximus

17.10.2006 - 11:10 Uhr

Und wie mache ich den Export?

17.10.2006 - 10:49 Uhr

Hallo zusammen,

dank Euren vielen Tips bin ich mit meinem ersten Projekt jetzt soweit fertig, dass die Website online gehen kann.
Dabei muss ich jedoch noch die Tabellen auf die Datenbank auf dem Server importieren.
Kann mir jemand sagen, wie ich das machen kann?
Ich habe auf dem Server die Möglichkeit, Daten als *.BAK und *.MDB zu importieren, bzw. per CSV Daten direkt in eine Tabelle zu importieren.

Kann man das mit dem Visual Studio bzw. Microsoft SQL Server 2005 lösen?
Wenn ja, wie?

Danke für Eure Hilfe.

Gruß
Maximus

15.10.2006 - 12:12 Uhr

Danke,

jetzt klappt's.

Schwere Geburt 😉

Gruss
Maximus

15.10.2006 - 12:00 Uhr

    protected void gvSpielerTipUebersicht_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            try
            {
                Image Bild = (Image)e.Row.FindControl("iPerson");
                Bild.ImageUrl = "~/Bilder/Icons/Harmony/smiley-falsch-32x32.jpg";
            }
            catch
            {
                Label1.Text = "Fehler";
            }
        }
    }

Und siehe da: Label1 meldet Fehler!

Also immer noch nicht gelöst. 😦
Hast Du noch eine Idee?

Gruß
Maximus

15.10.2006 - 11:45 Uhr

Funktionier leider überhaupt nicht.
Wie gesagt. Ein GridView.
Trotzdem danke.

Gruß
Maximus

15.10.2006 - 10:23 Uhr

Leider ist der Fehler immer noch da.
Ich poste nochmal wie es aussieht:

Das TemplateField ist Teil eines GridViews:


<asp:TemplateField>
                <ItemTemplate>
                    <asp:Image ID="iPerson" runat="server" /> 
                </ItemTemplate> 
</asp:TemplateField>

So greife ich auf das Image im TemplateField zu:


protected void gvSpielerTipUebersicht_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        Image Bild = (Image)e.Row.FindControl("iPerson");
        Bild.ImageUrl = "~/Bilder/Icons/Harmony/smiley-falsch-32x32.jpg";
    }

Und bekomme folgende Fehlermeldung:

Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt. 

Wo liegt mein Fehler?
Hat noch jemand eine Idee?

Gruß Maximus

14.10.2006 - 18:31 Uhr

Hmm,


protected void gvPersonenInfos_RowDataBound(object sender, GridViewRowEventArgs e)
{
        Image Bild = (Image)FindControl("iPerson");
        Bild.ImageUrl = "~/Bilder/Icons/Harmony/smiley-falsch-32x32.jpg";
}

bring leider auch die selbe Fehlermeldung.
Wie ist es richtig?

Gruß
Maximus

14.10.2006 - 17:28 Uhr

Hmm,

OnItemDataBound gehört zum DataGrid. Ich arbeite aber mit dem GridView.
Habe da folgendes versucht:


protected void gvPersonenInfos_DataBound(object sender, EventArgs e)
{
  Image Bild = (Image)FindControl("iPerson");
  Bild.ImageUrl = "~/Bilder/Icons/Harmony/smiley-falsch-32x32.jpg";
}

Leider bleibt die Fehlermeldung.
Was mache ich falsch?

Gruß
Maximus!

14.10.2006 - 16:10 Uhr

Hallo,

ich habe ein GridView names gvPersonenInfos.
Dies enthält ein TemplateField, welches ein Image mit der ID iPerson ´hat.
Wie kann ich darauf zur Laufzeit zugreifen?

        Image Bild = (Image)gvPersonenInfos.FindControl("iPerson");
Bild.ImageUrl = "~/Bilder/Icons/Harmony/smiley-falsch-32x32.jpg";

führt leider zur der Fehlermeldung Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.

Was mache ich falsch?
Danke für Eure Hilfe.

Gruß
Maximus

11.10.2006 - 19:40 Uhr

Ja, denke schon.
Danke für Die Hilfe.

Gruß
Maximus

09.10.2006 - 20:30 Uhr

Das hat geklappt!!
Vielen Dank.

Wenn Du mir jetzt auch noch erklären kannst, warum das so ist, damit ich nicht dumm sterbe, dann wäre ich wohl der glücklichste Mensch auf Erden.

Gruß
Maximus

08.10.2006 - 13:20 Uhr

Hi,

ja es macht Sinn, denn wenn der Parameter NULL enthält sollen einfache alle Daten angezeigt werden, enthält der Parameter jedoch ein Datum sollen nur die Daten vom entsprechenden Tag angezeigt werden.

Der Parameter wird wie folgt zugewiesen:


SqlCommand sqlBefehl = new SqlCommand(sqlSelectString, sqlVerbindung);
sqlBefehl.Parameters.AddWithValue("filter_spieltag", ddlSpieltag.SelectedValue.ToString());

Hast Du einen Tip?

Gruß Maximus

08.10.2006 - 10:41 Uhr

Hallo,

ich habe folgendes SQL-SELECT:


SELECT ********
FROM *******
WHERE (@filter_datum IS NULL) OR (Tabelle1.Datum = @filter_datum)

Die Filter-Werte kommen aus einem DropDown-Feld wo der Inhalt des ersten Eintrags bewustt auf NULL gesetzt wird:

ddlDatum.Items[0].Value = DBNull.Value.ToString();

Problem: Obwohl der Wert ja definitiv NULL ist werden keine Zeilen zurückgeliefert obwohl welche existieren.
Testet ich den SQL-Command im AbfrageDesigner von VS2005 funktioniert er einwandfrei.

Bisher konnte ich das Problem lösen indem ich bei dem zugehörigen SQLDataSource die Eigenschaft CancelSelectOnNullParamter auf False gestellt habe.
In diesem Fall wird der SELECT-Command jedoch mittels eines SqlCommand/SqlDataAdapter aufgerufen und nicht über das SQLDataSource.
Da der Fehler dann wieder auftritt, liegt die Vermutung nahe, dass der SELECT bei NULL nicht ausgeführt wird.

Wie kann ich das beheben?

Danke für Eure Hilfe
Gruss
Jens

07.10.2006 - 18:36 Uhr

Super,

hat geklappt. Vielen Dank.

Gruß Maximus

07.10.2006 - 09:02 Uhr

Hallo,

ich versuche schon länger vergeblich, eine Variable im Befehls- und Parametereditor zu vergeben.
Dort kann ich ja als Paramterquelle "Cookie", "Control, "Form", "Profile", "QueryString" oder "Session" auswählen, aber wie kann ich eine x-beliebige Variable dort übergeben?

Beispiel:

Im ASPX.CS File wird eine Variable varDatum übergeben. Diese möchte ich dem Parameter @BeginnDatum zuweisen.

Kann man sowas mittels des Befehls- und Parameter-Editor lösen oder muss man dabei anders vorgehen?

Gruß
Maximus

14.09.2006 - 19:34 Uhr

Hallo,

ich habe folgende Ausgangssituation:

Ich fülle ein GridView mit Daten aus einer Datenbankband und möchte zusätzlich noch eine Spalte anhängen, die abhängig von den Daten der Zeile berechnet. wird.
Beispiel:
Spalte A: 2
Spalte B: 3
Spalte C: Wert x
Spalte D: Wert y

Wenn jetzt Spalte A=C und B=D ist soll in der angehängten Spalte (nenn wir Sie Spalte E) der Wert 3 erscheinen.
Sollte nun A=C und B<>D sein, soll in Spalte E der Wert 1 erscheinen.
Und das soll in Zeile pro Zeile geschehen.
Und ganz am Ende sollen alle Wert von Spalte E zusammengerechnet werden.

Ich habe jetzt einfach eine neue Spalte als TemplateField angehängt und mit einem Label gefüllt.
Aber wie kann ich das Label nun mit den erforderlichen Daten füllen?
Und vorallem: Wie kann ich nachher die Wert kummulieren lassen?
Im voraus besten Dank für Eure Hilfe.

Gruß
Maximus

11.09.2006 - 22:31 Uhr

Hallo,

ich habe folgende Problemstellung:

Ich möchte im EditItemTemplate ein Bild darstellen.
Durch Klick auf das Bild soll sich ein neues kleines Fenster öffen, wo ich mittels FileUpload ein neues Bild auswählen kann.
Dieses URL zum neuen Bild soll nun die ImageURL des Bildes im EditItemTemplate werden.
Nachdem ich im EditItemTemplate dann auf OK gedrückt habe, wird die neue URL dann per UPDATE in die Tabelle übernommen.

Wie löse ich das am einfachsten?
Ist der Einsatz einer ImageButton dem Image vorzuziehen?

Wie schaffe ich es, der ImageUrl-Eigenschaft den neuen Wert zuzuweisen?
Für ein kleines Code-Sample wäre ich Euch unendlich dankbar.

Gruß
Maximus!

07.09.2006 - 21:03 Uhr

Hallo,

ich versuche mich grade an der Benutzerverwaltung und habe dabei folgendes Problem:

Ich logge mich auf der einer Page (nennen wir Sie Start.aspx) ein und setze die DestinationPageUrl auf einen andere Page (nennen wir Sie Eingabe.aspx).
Dort möchte ich ein GridView mit allen Einträgen füllen, die der angemeldete Benutzer gemacht hat bzw. soll bei Änderungen etc. die User-ID des angemeldeten Users mit abspeichern.

Wie gehe ich dabei vor?
Was muss ich dem SQL-Parameter übergeben dass er die User-ID speichert bzw. ausliest?
Arbeitet man bei sowas mit Session?
Wie wird der angemeldete User von Page zu Page übernommen?

Sicher viele Frage, aber ich wäre Euch sehr dankbar, wenn Ihr mir doch helfen könntet bzw. mir sagen könntet, ob es eine gute deutschsprachige Anleitung gibt, wie man obiges Problem angeht.

Besten Dank für Eure Hilfe.
Gruss
Maximus

02.09.2006 - 22:42 Uhr

Hallo,

kann mir jemand sagen, warum der folgende INSERT-Befehl nicht funktionert:

INSERT INTO 
SpieleTips (spiel_nr, tip_heim, tip_gast)
VALUES (@spiel_nr, @tip_heim, @tip_gast)

Hier der dazugehörige INSERT-Befehl:

SELECT     A.spiel_id, A.spieltag_id, B.mannschafts_name, B.mannschafts_id, B.mannschafts_logo_klein, C.mannschafts_name AS mannschafts_name1, 
                      C.mannschafts_id AS mannschafts_id1, C.mannschafts_logo_klein AS mannschafts_logo_klein1, D.spieltag_datum, D.spieltag_name, 
                      D.spieltag_id AS Expr4, E.tip_id, E.tip_heim, E.tip_gast, E.spiel_nr
FROM         Spiele AS A INNER JOIN
                      Mannschaften AS B ON A.mannschaft_a = B.mannschafts_id INNER JOIN
                      Mannschaften AS C ON A.mannschaft_b = C.mannschafts_id INNER JOIN
                      Spieltage AS D ON A.spieltag_id = D.spieltag_id LEFT OUTER JOIN
                      SpieleTips AS E ON A.spiel_id = E.spiel_nr
WHERE     (@filter_spieltag IS NULL) AND (@filter_heimteam IS NULL) AND (@filter_gastteam IS NULL) OR
                      (@filter_spieltag IS NULL) AND (@filter_gastteam IS NULL) AND (B.mannschafts_id = @filter_heimteam) OR
                      (@filter_heimteam IS NULL) AND (@filter_gastteam IS NULL) AND (D.spieltag_id = @filter_spieltag) OR
                      (@filter_gastteam IS NULL) AND (B.mannschafts_id = @filter_heimteam) AND (D.spieltag_id = @filter_spieltag) OR
                      (@filter_spieltag IS NULL) AND (@filter_heimteam IS NULL) AND (C.mannschafts_id = @filter_gastteam) OR
                      (@filter_spieltag IS NULL) AND (B.mannschafts_id = @filter_heimteam) AND (C.mannschafts_id = @filter_gastteam) OR
                      (@filter_heimteam IS NULL) AND (D.spieltag_id = @filter_spieltag) AND (C.mannschafts_id = @filter_gastteam) OR
                      (B.mannschafts_id = @filter_heimteam) AND (D.spieltag_id = @filter_spieltag) AND (C.mannschafts_id = @filter_gastteam)
ORDER BY A.spieltag_id

der das folgende GridView füllt:

<asp:GridView ID="GridView1" runat="server" AllowPaging="True" AllowSorting="True"
            AutoGenerateColumns="False" DataKeyNames="spiel_id"
            DataSourceID="sdsSpielInfos" EnableSortingAndPagingCallbacks="True" PageSize="9">
            <Columns>
                <asp:BoundField DataField="spieltag_name" HeaderText="Spieltag" ReadOnly="True" SortExpression="spieltag_name" />
                <asp:ImageField DataImageUrlField="mannschafts_logo_klein" ReadOnly="True">
                </asp:ImageField>
                <asp:BoundField DataField="tip_heim" HeaderText="Tore" SortExpression="tip_heim" />
                <asp:BoundField DataField="tip_gast" HeaderText="Tore" ShowHeader="False" SortExpression="tip_gast" />
                <asp:ImageField DataImageUrlField="mannschafts_logo_klein1" ReadOnly="True">
                </asp:ImageField>
                <asp:BoundField DataField="tip_id" HeaderText="tip_id" InsertVisible="False" SortExpression="tip_id" />
                <asp:BoundField DataField="spiel_id" HeaderText="spiel_id" InsertVisible="False"
                    SortExpression="spiel_id" />
                <asp:BoundField DataField="spiel_nr" HeaderText="spiel_nr" SortExpression="spiel_nr" />
                <asp:CommandField ButtonType="Image" CancelImageUrl="~/Bilder/Icons/Harmony/cancl_16.gif"
                    EditImageUrl="~/Bilder/Icons/Harmony/edit_16.gif" ShowEditButton="True" UpdateImageUrl="~/Bilder/Icons/Harmony/ok_16.gif" />
            </Columns>
        </asp:GridView>

SELECT und UPDATE funktionieren beide einwandfrei, nur INSERT INTO fügt leider keine Datensätze an.
Das Interessante: Wenn ich den INSERT INTO direkt im Server-Explorer ausführe funktioniert es, starte ich es aus dem GridView heraus, leider nicht.

Weiß jemand wo mein Fehler liegt?
Im voraus danke für Eure Hilfe.

Gruß
Maximus!

01.09.2006 - 20:37 Uhr

Hallo,

ich habe folgenden UPDATE-Befehl in einer Stored Precedure:


ALTER PROCEDURE dbo.AktualisiereDetails

	(
	@spiel_id int,
	@spieltag_id int
	)
AS
	UPDATE	Spiele
	SET	spieltag_id = @spieltag_id
	WHERE	spiel_id = @spiel_id
RETURN

und übergebe folgende Werte:

spieltag_id = 3
spiel_id = 1

Trotzdem bekomme ich immer noch die obige Fehlermeldung.
Kann mir jemand sagen, was ich falsch mache?

Im zweiten Step möchte ich die spieltag_id gerne mit dem Wert aus der DropDownList ddl_spieltag füllen. Diese ist Teil des EditItemTemplate eines FormViews.
Wie gebe ich das korrekt an?

Danke für Eure Hilfe.
Gruss
Maximus

01.09.2006 - 16:42 Uhr

Na dann ist ja alles wieder gut.

Threat geschlossen.

31.08.2006 - 19:32 Uhr

Hi,

ich glaube wir reden hier aneinander vorbei.
So rufe ich die Stored Procedur auf:


<asp:SqlDataSource ID="sdsSpiele" runat="server" ConnectionString="<%$ ConnectionStrings:BundesligaVerbindungsString %>" SelectCommandType="StoredProcedure" SelectCommand="ErmittelSpiele" CancelSelectOnNullParameter="False">
                    <SelectParameters>
                        <asp:ControlParameter ControlID="ddl_FilterSpieltage" Name="filter_spieltag"
                            PropertyName="SelectedValue" Type="Int32" />

...und dann folgen noch weitere Parameter.

Und das hier IST die Gespeicherte Prozedur:


ALTER PROCEDURE dbo.ErmittelSpiele
	
	(
		@filter_spieltag int,
		@filter_heimteam int,
		@filter_gastteam int
	)
	
AS
	        SELECT A.spiel_id, A.spieltag_id, B.mannschafts_name, C.mannschafts_name, D.spieltag_datum, D.spieltag_name, D.spieltag_id
	        FROM Spiele A, Mannschaften B, Mannschaften C, Spieltage D
	        WHERE A.mannschaft_a = B.mannschafts_id AND A.mannschaft_b = C.mannschafts_id AND A.spieltag_id = D.spieltag_id AND (@filter_spieltag IS NULL OR D.spieltag_id=@filter_spieltag) AND (@filter_heimteam IS NULL OR B.mannschafts_id=@filter_heimteam) AND (@filter_gastteam IS NULL OR C.mannschafts_id=@filter_gastteam);

	
	RETURN

Wie müsste die Gespeicherte Prozeudur denn ohle das "ALTER" aussehen?

Gruss
Maximus

30.08.2006 - 22:30 Uhr

Es handelt sich dabei im eine Stored Procedure.
Da muss doch immer ALTER oder CREATE vorne stehen, oder ist das falsche?
Wie sieht die Stored Procedure denn richtig aus?

Gruss
Maximus!

30.08.2006 - 20:19 Uhr

Problem gelöst:

Falls es jemand interessiert:

Man muss bei dem SqlDataSource die Eigenschaft CancelSelectOnNullParameter auf FALSE setzen.

Und schon läuft alles wie geschmiert!

Trotzdem vielen Dank für Eure Hilfe.
Tolles Forum! Ihr werdet mich so schnell nicht wieder los! 😉

Gruss
Maximus

30.08.2006 - 19:38 Uhr

Hallo,

das ist nicht ganz richtig.
Die Proezedur besteht ja bereits und gibt auch wenn die 3 Parameter richtig gefüllt sind was zurück.
Das Problem liegt aber darin, dass es nichts zurückgibt, wenn die 3 Parameter = null sind.
Dabei sollten dann eigentlich ALLE Datensätze angezeigt werden.

Beispiel:
Die 3 DropDownLists geben die Werte "1","2","1" zurück: Hier filter der Command richtig und zeigt nur den entsprechendne Datensatz an.
Die 3 DropDownLists geben die Wert DBNull.Value, DBNull.Value, DBNull.Value zurück: Jetzt werden KEINE Datensätze angezeigt, obwohl eigentlich ALLE angezeigt werden sollten.

Gibt es vielleicht eine andere einfachere Möglichkeit, so etwas zu realisieren?
im Prinzip möchte ich ja nur, dass wenn keine Filter gesetzt werden (per Drop-Down-List) alle Datensätze angezeigt werden und wenn Filter gesetzt sind, diese auch berücksichtigt werden.

Danke für Deine Hilfe.
Sorry, bin neu in der Datenbankprogrammierung.

Gruß
Maximus!

29.08.2006 - 21:33 Uhr

Hallo,

ich habe folgendes Problem:

Ich lese aus 3 DropDownList Werte aus die als Filter mittels Parameter für einen SQL-Command dienen. Bei einem Item der DropDownListen übergebe ich den Wert DBNull.Value.ToString().
Damit will ich erreichen, dass die Ergebnisse des SQL-Commands nicht gefiltert werden.
Die Parameter weden mittel des ASP-Tags ControlParamter an das SqlDataSource gebunden:

<asp:SqlDataSource ID="sdsSpiele" runat="server" ConnectionString="<%$ ConnectionStrings:BundesligaVerbindungsString %>" SelectCommandType="StoredProcedure" SelectCommand="ErmittelSpiele">
                    <SelectParameters>
                        <asp:ControlParameter ControlID="ddl_FilterSpieltage" Name="filter_spieltag"
                            PropertyName="SelectedValue" Type="Int32" />
                        <asp:ControlParameter ControlID="ddl_FilterHeimTeam" Name="filter_heimteam"
                            PropertyName="SelectedValue" Type="Int32" />
                        <asp:ControlParameter ControlID="ddl_FilterGastTeam" Name="filter_gastteam"
                            PropertyName="SelectedValue" Type="Int32" />
                    </SelectParameters>
                </asp:SqlDataSource>

Hier der SQL-Command:

ALTER PROCEDURE dbo.ErmittelSpiele
	
	(
		@filter_spieltag int,
		@filter_heimteam int,
		@filter_gastteam int
	)
	
AS
	        SELECT A.spiel_id, A.spieltag_id, B.mannschafts_name, C.mannschafts_name, D.spieltag_datum, D.spieltag_name, D.spieltag_id
	        FROM Spiele A, Mannschaften B, Mannschaften C, Spieltage D
	        WHERE A.mannschaft_a = B.mannschafts_id AND A.mannschaft_b = C.mannschafts_id AND A.spieltag_id = D.spieltag_id AND (@filter_spieltag IS NULL OR D.spieltag_id=@filter_spieltag) AND (@filter_heimteam IS NULL OR B.mannschafts_id=@filter_heimteam) AND (@filter_gastteam IS NULL OR C.mannschafts_id=@filter_gastteam);

Leider liefert der SQL-Command KEINE Zeilen zurück obwohl er eigentlich nun alle anzeigen müsste. Wo liegt mein Fehler?

Das gleiche Problem hat im Forum "Windows-Technologien" angefangen und dort auch einen Post - da es aber jetzt mehr Richtung SQL geht, habe ich das Problem hier nochmal gepostet.

Falls es eine einfache Lösung gibt, wäre es nett, wenn Ihr mir die mitteilen könntet und den entsprechenden Post im anderen Forum schließt.

Im Voraus besten Dank.
Gruß
Maximus!

29.08.2006 - 20:41 Uhr

Hallo,

richtig ist :

ddlFilterSpieltag.Items[0].Value = DBNull.Value.ToString();

Jetzt kommt keine Fehlermeldung mehr, dafür habe ich aber ein neues Problem:

Obwohl der Wert der Drop-Down-List, jetzt NULL ist, findet der SELECT-COMMAND keine passende Zeile.
Hier mal der SQL-PARAMETER:


ALTER PROCEDURE dbo.ErmittelSpiele
	
	(
		@filter_spieltag int = NULL,
		@filter_heimteam int = NULL,
		@filter_gastteam int = NULL
	)
	
AS
	        SELECT A.spiel_id, A.spieltag_id, B.mannschafts_name, C.mannschafts_name, D.spieltag_datum, D.spieltag_name, D.spieltag_id
	        FROM Spiele A, Mannschaften B, Mannschaften C, Spieltage D
	        WHERE A.mannschaft_a = B.mannschafts_id AND A.mannschaft_b = C.mannschafts_id AND A.spieltag_id = D.spieltag_id AND (@filter_spieltag IS NULL OR D.spieltag_id=@filter_spieltag) AND (@filter_heimteam IS NULL OR B.mannschafts_id=@filter_heimteam) AND (@filter_gastteam IS NULL OR C.mannschafts_id=@filter_gastteam);


Alle DefaultValues habe ich aus dem ControlParameter-Tag entfernt.
Ist es falsch den Datentyp auf "int" zusetzen?
Oder woran kann es sonst noch liegen?

Danke für Eure Hilfe.
Gruß
Maximus

29.08.2006 - 12:45 Uhr

Hallo,

ich habe folgendes Problem:

Ich habe folgende DropDownList (ddlFilterSpieltag):

Text | Wert
Alle Spiele anzeigen | ????-> HIER MUSS NULL ÜBERGEBEN WERDEN

  1. Spieltag | 1
  2. Spieltag | 2

Ein Gridview wird mittels einer SQLDataSource (sdsSpiele) gefüllt, wobei der Wert aus der DropDownList (ddFilterSpieltag) als Filter agiert:

SELECT...
FROM....
WHERE ( filter_spieltag IS NULL OR filter_spieltag = @filter_spieltag)
<asp:SqlDataSource ID="sdsSpiele" runat="server" ConnectionString="<%$ ConnectionStrings:BundesligaVerbindungsString %>"  SelectCommandType="StoredProcedure" SelectCommand="ErmittelSpiele">
<SelectParameters>
   <asp:ControlParameter ControlID="ddl_FilterSpieltage" Name="filter_spieltag" PropertyName="SelectedValue" Type="Int32" DefaultValue="1" />
</SelectParameters>
</asp:SqlDataSource>

PROBLEM: Damit kein Filter berücksichtigt wird muss dem SelectParamter der Wert NULL übergeben werden.
Alles funktioniert wenn ich einen Wert (1,2,3...) übergebe, wenn ich nichts übergeben kommt die Fehlermedlung: "Die Eingabezeichenfolge hat das falsche Format.".
Auch Versuche wie

ddlFilterSpieltag.Items[0].Vlaue = "NULL" 

oder ähnliches bringt mich nicht weiter.
Wo liegt mein Fehler?
Im voraus danke für Eure Hilfe.

Gruß
Maximus