2010-04-19 7 views
0

이 코드가 작동하지 않는 이유는이 코드를 실행하고 싶습니다. vwd 2008 express이 오류 메시지를 표시합니다. 잘못된 개체 이름 'answers'.asp.net 저장 프로 시저 문제

이 내 ASCX.CS 코드 :

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Data; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using System.Web.Security; 
using System.Data.SqlClient; 
using System.Configuration; 
public partial class odgl : System.Web.UI.UserControl 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 

     string connectionString = 
    @"SANATIZEDSTRING!!!!"; 


     using (SqlConnection cn = new SqlConnection(connectionString)) 
     { 


    using (SqlCommand dohvati = new SqlCommand("dbo.get_answers",cn)) { 


     dohvati.CommandType = CommandType.StoredProcedure; 
     SqlParameter izracun = new SqlParameter("@count", SqlDbType.Int); 
     izracun.Direction = ParameterDirection.Output; 

     dohvati.Parameters.Add(izracun); 

     cn.Open(); 


     dohvati.ExecuteNonQuery(); 
     int count = Int32.Parse(dohvati.Parameters["@count"].Value.ToString()); 

     Response.Write(count.ToString()); 


     cn.Close(); 

    } 

} 

    } 
} 

이 내 저장 프로 시저 입니다 :

문제는 프로 시저에 존재하는 것 같다
set ANSI_NULLS ON 
set QUOTED_IDENTIFIER ON 
GO 
ALTER procedure [dbo].[get_answers] 
@ukupno int output 


as 
select @count= (SELECT COUNT(*) FROM answers) 
go 
+3

에 연결 올바른 DB를 지정했는지 확인 모든 세계가 볼 수있는 사이트. –

답변

3

서버의 estudent_pioo 데이터베이스의 스키마에 answers 테이블이없는 것 같습니다.

게시 한 저장 프로 시저가 실행되지 않습니다. 아마도 당신은 의미 :

set ANSI_NULLS ON 
set QUOTED_IDENTIFIER ON 
GO 

ALTER procedure [dbo].[get_answers] 
    @count int output 

as 
    select @count= (SELECT COUNT(*) FROM answers) 
go 
1

이 ... 당신이 있는지 있습니까 대답 테이블이 존재하며 dbo 스키마에 속해 있습니까?

0

'답변'은 저장 프로 시저와 동일한 DB에있는 테이블 또는 뷰입니까? SQL에서 직접 저장 프로 시저를 실행 해보십시오.

매개 변수에 문제가있는 것처럼 보입니다. @count 여야합니까?

1

, 당신이 웹에 넣어 코드에 SQL 서버 연결 문자열을 포함하지 연결 문자열 향후 참조를 위해