2011-03-21 2 views
0

안녕하세요, 내 코드가 정확하다는 것을 의미합니다. 코드를 디버깅 한 후에 아무런 오류가 없다는 것을 의미합니다. 내 목표는 사용자가 버튼 (기본값에 배치 됨)을 클릭하는 경우입니다. aspx, 예를 들어) 다음 데이터베이스 테이블 (SQL Express 내에 배치 된 데이터베이스) 데이터베이스에 만들어집니다, 그 목적을 위해 우리는 코드를 디버그하고 코드에 오류가 없습니다. 내가 버튼을 클릭하면 (런타임에) 내가 (은 SQL 익스프레스에) 데이터베이스를 확인 .when 테이 버튼 뒤에 C#으로 작성된 내 것은 문제도 코드를 해결하는 database.please 선생님에 만들어지지 않습니다이 것은 즉 :코드에 문제는 없지만 출력은 아무것도 아님

using System; 
using System.Collections; 
using System.Configuration; 
using System.Data; 
using System.Linq; 
using System.Web; 
using System.Web.Security; 
using System.Web.UI; 
using System.Web.UI.HtmlControls; 
using System.Web.UI.WebControls; 
using System.Web.UI.WebControls.WebParts; 
using System.Xml.Linq; 
//using PractiseWeb.DataSet1TableAdapters; 
using System.Collections.Generic; 
using System.Data.OleDb; 
using System.Diagnostics; 
using System.ComponentModel; 
using System.Text; 
using System.Data.SqlClient; 
using System.Data.Odbc; 
using ADOX; 
using ADODB; 

public partial class _Default : System.Web.UI.Page 
{ 
    SqlConnection conn; 
    SqlCommand cmd; 
    string connectionString = ConfigurationManager.ConnectionStrings["gameConnectionString"].ConnectionString; 

    protected void Page_Load(object sender, EventArgs e) 
    { 

    } 

    protected void Button1_Click(object sender, EventArgs e) 
    { 
    try 
    { 
     conn = new SqlConnection(connectionString); 
     if (!(conn.State == ConnectionState.Open)) 
     { 
     conn.Open(); 
     } 
     string sql = "CREATE TABLE mySchoolRecord(StudentId INTEGER CONSTRAINT PkeyMyId PRIMARY KEY, Name CHAR(50)," + "Address CHAR(255)," + "Contact INTEGER));"; 
     cmd = new SqlCommand(sql, conn); 
     cmd.ExecuteNonQuery(); 

     sql = "INSERT INTO mySchoolRecord (StudentId, Name,Address,Contact) VALUES (1, 'Mr. Manish', " + " 'Sector-12,Noida', 2447658 );"; 
     cmd = new SqlCommand(sql, conn); 
     cmd.ExecuteNonQuery(); 

     sql = "INSERT INTO mySchoolRecord (StudentId, Name,Address,Contact) VALUES (2, 'Mr. Ravi', " + " 'New Delhi', 2584076521 );"; 
     cmd = new SqlCommand(sql, conn); 
     cmd.ExecuteNonQuery(); 

     sql = "INSERT INTO mySchoolRecord (StudentId, Name,Address,Contact) VALUES (3, 'Mr. Peter', " + " 'United States', 25684124 );"; 
     cmd = new SqlCommand(sql, conn); 
     cmd.ExecuteNonQuery(); 


     if (conn.State == ConnectionState.Open) 
     { 
     conn.Close(); 
     } 

    } 
    catch (Exception ex) 
    { 
     Console.WriteLine(ex); 
    } 

    } 
} 

감사 SIR

+0

질문을 편집하십시오. 코드에 "코드"형식을 추가하십시오 – zabulus

+0

SQL을 복사하여 sqlserver에 직접 붙여넣고 생성 여부를 확인할 수 있습니까 ?? 디버깅 중에 예외가 발생하면 코드에 예외가 있는지 알려줍니다. – kobe

+0

"코드에 문제가 없다"고 말하는 것은 이상합니다. 시간의 99 %, 문제는 우리 자신의 코드에 있습니다 ... –

답변

1

try-catch를 제거하고 현재 상황을 확인하십시오. 콘솔에 쓰기가 ASP.NET 응용 프로그램에서 많은 도움이되지는 않습니다. :) 그것을 만들거나하지 않으면

using System; 
using System.Data; 
using System.Data.SqlClient; 

public partial class _Default : System.Web.UI.Page 
{ 
    SqlConnection conn; 
    SqlCommand cmd; 
    string connectionString = ConfigurationManager.ConnectionStrings["gameConnectionString"].ConnectionString; 

    protected void Button1_Click(object sender, EventArgs e) 
    { 
    using (conn = new SqlConnection(connectionString)) 
    { 
     if (!(conn.State == ConnectionState.Open)) 
     { 
     conn.Open(); 
     } 
     string sql = "CREATE TABLE mySchoolRecord(StudentId INTEGER CONSTRAINT PkeyMyId PRIMARY KEY, Name CHAR(50)," + "Address CHAR(255)," + "Contact INTEGER));"; 
     cmd = new SqlCommand(sql, conn); 
     cmd.ExecuteNonQuery(); 

     sql = "INSERT INTO mySchoolRecord (StudentId, Name,Address,Contact) VALUES (1, 'Mr. Manish', " + " 'Sector-12,Noida', 2447658 );"; 
     cmd = new SqlCommand(sql, conn); 
     cmd.ExecuteNonQuery(); 

     sql = "INSERT INTO mySchoolRecord (StudentId, Name,Address,Contact) VALUES (2, 'Mr. Ravi', " + " 'New Delhi', 2584076521 );"; 
     cmd = new SqlCommand(sql, conn); 
     cmd.ExecuteNonQuery(); 

     sql = "INSERT INTO mySchoolRecord (StudentId, Name,Address,Contact) VALUES (3, 'Mr. Peter', " + " 'United States', 25684124 );"; 
     cmd = new SqlCommand(sql, conn); 
     cmd.ExecuteNonQuery(); 

     if (conn.State == ConnectionState.Open) 
     { 
     conn.Close(); 
     } 
    } 
    } 
} 
0

@sayyer이

당신이 당신의 SQL을 복사 및 붙여 넣기 SQLSERVER에서 직접 볼 수있는 아래는 1) 단계에 따라 ?? 코드

2에서 예외가 있다면, 그것은 당신의 데이터베이스 연결

3) 삽입 문에 대해 모든 형식화하는을 확인 확인)를 알려줍니다 debuggin 동안 예외에 휴식을 않습니다. 이 문제를 해결하기 위해

가장 좋은 방법은 CTR + Alt + E를하고

0

는 SQL 쿼리에서 세미콜론을 제거하십시오 당신의 문제를 해결할 것, 예외에 휴식 확인합니다.