原贴地址
http://community.csdn.net/Expert/topic/5315/5315666.xml?temp=.939419我想出错的地方:
@SiteID int output,SET @SiteID = (SELECT scope_identity() )spt = new SqlParameter("@SiteID", SqlDbType.Int, 4);
spt.Direction = ParameterDirection.Output;
com.Parameters.Add(spt);谢谢 很急啊
http://community.csdn.net/Expert/topic/5315/5315666.xml?temp=.939419我想出错的地方:
@SiteID int output,SET @SiteID = (SELECT scope_identity() )spt = new SqlParameter("@SiteID", SqlDbType.Int, 4);
spt.Direction = ParameterDirection.Output;
com.Parameters.Add(spt);谢谢 很急啊
解决方案 »
- 如何去除内置的分页,只显示自定义分分页
- 正则表示式只输入0,1,2,3,4,5,6正整数
- 如何控制usercontrol中的textbox的可编辑性
- 请前辈推荐权限管理系统,小弟万分感谢!!
- 事务处理问题,请大家帮个忙!!OracleConnectionTrans.BeginTransaction(IsolationLevel.ReadCommitted)
- 添加数据进datatable失败
- IP地址的正则判断
- 关于如何使用treeview的问题
- 如何得到行号
- 为何出现“找不到基类型“的错误?
- if(ViewState["doSearch"]!=null) VB写法
- 在asp里用sql插入access的让语句怎么写?
[SiteID] [int] IDENTITY (1, 1) NOT NULL ,
[CityID] [int] NOT NULL ,
[SupplierID] [int] NULL ,
[Address] [nvarchar] (500) COLLATE Chinese_PRC_CI_AS NULL ,
[SiteName] [nvarchar] (500) COLLATE Chinese_PRC_CI_AS NULL ,
[MapRoad] [nvarchar] (500) COLLATE Chinese_PRC_CI_AS NULL ,
[SitePic] [nvarchar] (500) COLLATE Chinese_PRC_CI_AS NULL ,
[Intro] [nvarchar] (4000) COLLATE Chinese_PRC_CI_AS NULL ,
[Re] [ntext] COLLATE Chinese_PRC_CI_AS NULL ,
CONSTRAINT [PK_ConcertSite] PRIMARY KEY CLUSTERED
(
[SiteID]
) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
存储过程CREATE PROCEDURE [insert_ConcertSite_1]
(
@SiteID int output,
@CityID [int],
@SupplierID [int],
@Address [nvarchar](500),
@SiteName [nvarchar](50),
@MapRoad [nvarchar](500),
@SitePic [nvarchar](500),
@Intro [nvarchar](4000),
@Re [text])AS INSERT INTO [ConcertSite]
( [CityID],
[SupplierID],
[Address],
[SiteName],
[MapRoad],
[SitePic],
[Intro],
[Re])
VALUES
( @CityID,
@SupplierID,
@Address,
@SiteName,
@MapRoad,
@SitePic,
@Intro,
@Re)
SET @SiteID = (SELECT scope_identity() )
GO
代码,里面的例子使用了固定的参数值,可以替换
SqlConnection con = new SqlConnection(Util.GetConnectionString("AppConnectioNString"));
con.Open();
SqlCommand com = new SqlCommand("insert_ConcertSite_1", con);
com.CommandType = CommandType.StoredProcedure;
SqlParameter spt = new SqlParameter();
spt = new SqlParameter("@SiteID", SqlDbType.Int, 4);
spt.Direction = ParameterDirection.Output;
com.Parameters.Add(spt);
spt = new SqlParameter("@CityID", SqlDbType.Int, 4);
spt.Value = 1;
com.Parameters.Add(spt);
spt = new SqlParameter("@SupplierID", SqlDbType.Int, 4);
spt.Value = 2;
com.Parameters.Add(spt);
spt = new SqlParameter("@Address", SqlDbType.NVarChar, 500);
spt.Value ="aaa";
com.Parameters.Add(spt);
spt = new SqlParameter("@SiteName", SqlDbType.NVarChar, 50);
spt.Value = "aaa";
com.Parameters.Add(spt);
spt = new SqlParameter("@MapRoad", SqlDbType.NVarChar, 500);
spt.Value = "aaa";
com.Parameters.Add(spt);
spt = new SqlParameter("@SitePic", SqlDbType.NVarChar, 500);
spt.Value = "aaa";
com.Parameters.Add(spt);
spt = new SqlParameter("@Intro", SqlDbType.NVarChar, 4000);
spt.Value = "aaa";
com.Parameters.Add(spt); spt = new SqlParameter("@Re", SqlDbType.Text, 16);
spt.Value = "aaa";
com.Parameters.Add(spt);
int i = Convert.ToInt32(com.ExecuteNonQuery());
int outID = (int)com.Parameters["@SiteID"].Value;
com.Connection.Close();
Response.Write(outID);
也就是自增列SiteID
所以类型不正确再问一下如果上面的那条存储过程我还想返回他是当前第几条记录要怎么办呢
因为ID是记录号,而我要返回表里有多少条记录要怎么办谢谢