Du skall la importera båda för att få tillgång till de.
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
12 svar · 275 visningar · startad av icaaq
Nu är jag tillbaks!!
Jag har denna
[RED]
private void Button1_Click(object sender, System.EventArgs e)
{
[b]sqlConnection[/b] myConn = new SqlConnection(get_sqlConn());
[b]sqlCommand[/b] myComm = new SqlCommand("doInsertSkale", myConn);
}
[/red]
Men den säger följande om den feta texten
The type or namespace name 'myComm' could not be found (are you missing a using directive or an assembly reference?)
Det fastän jag har specifierat namnutrymmet för SQL Server .NET providern genom att skriva
[red]
using System.Data;
using System.Data.SqlClient;
[/red]
Vad har jag gjort för fel?
Du skall la importera båda för att få tillgång till de.
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
Jag har båda.....*redigerar*
Om du tar bort "" från doInsertSkale ???
Sitter och tittar på http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemdatasqlclientsqlcommandclasstopic.asp
nope samma sak :(
Tycker det är ganska roligt att följa dina trådar för den som kommer fram till lösning är oftast du själv. ;) Och för det andra så lär vi andra genom dig.
Man gör så gott man kan :e
Jag är ute på djupt vatten nu.... :l
Vad är fel på denna:
[red]
DateTime datum_datum = new System.DateTime();
int intFeel = 35;
int datum_id = 1;
SqlConnection myConn = new SqlConnection(@"Data Source=(local);Integrated Security=SSPI;Initial Catalog=krisen; uid=sa; pwd=");
SqlCommand myComm = new SqlCommand("doInsertSkale", myConn);
myComm.CommandType = CommandType.StoredProcedure;
myComm.Parameters.Add(new SqlParameter("@datum_datum", SqlDbType.DateTime,
8, ParameterDirection.Input, false,
0, 0, "datum_datum" ,DataRowVersion.Current ,null));
myComm.Parameters.Add(new SqlParameter("@datum_feel", SqlDbType.Int,
4, ParameterDirection.Input, false,
0, 0, "intFeel", DataRowVersion.Default, null));
myComm.Parameters.Add(new SqlParameter("@datum_id", SqlDbType.Int,
4, ParameterDirection.Input, false,
0, 0, "datum_id", DataRowVersion.Default, null));
myComm.UpdatedRowSource = UpdateRowSource.OutputParameters;
myConn.Open();
myComm.ExecuteNonQuery();
myConn.Close();
[/red]
jag får följande fel
Procedure 'doInsertSkale' expects parameter '@datum_datum', which was not supplied.
men enligt min mening skickar jag den......men som sagt jag är ute på djupt vatten nu för jag har alldrig hållt på med SP förut :OO
Hoppas att nån kan leda mig upp ur sjön och in på säkert vatten igen
DoInsertSkale ser ut så här
[red]
ALTER PROCEDURE dbo.doInsertSkale
(
@datum_datum DATETIME,
@datum_feel INTEGER,
@datum_id INTEGER OUTPUT)
AS
SET NOCOUNT OFF;
SELECT @datum_id = MAX(datum_id) + 1
FROM t_datum;
INSERT INTO t_datum(datum_id, datum_datum, datum_feel)
VALUES(@datum_id, @datum_datum, @datum_feel);
RETURN[/red]
:)
Har inte jobbat med stored procedures, men måste du inte sätta Value på SqlCommandot också?
Ni hade så rätt så, jag vet inte vad det var för kodexempel jag hittade :r
Så här ser det fungerande exemplet ut:
[red]
private void Button1_Click(object sender, System.EventArgs e)
{
DateTime datum_datum = Hidden1.Value;
int intFeel = Convert.ToInt32(DropDownList1.SelectedItem.Text);
SqlConnection myConn = new SqlConnection(@"Data Source=(local);Integrated Security=SSPI;Initial Catalog=krisen; uid=sa; pwd=");
SqlCommand myComm = new SqlCommand("doInsertSkale", myConn);
myComm.CommandType = CommandType.StoredProcedure;
myComm.Parameters.Add("@datum_datum", SqlDbType.DateTime, 8).Value = datum_datum;
myComm.Parameters.Add("@datum_feel", SqlDbType.Int, 4).Value = intFeel;
myComm.UpdatedRowSource = UpdateRowSource.Both;
myConn.Open();
myComm.ExecuteNonQuery();
myConn.Close();
}[/red]
brooooom