Từ 1 tới 6 trên tổng số 6 kết quả

Đề tài: [Solved]Lấy Giá Trị Trả về của 1 stored procudure

  1. #1
    Ngày gia nhập
    02 2007
    Nơi ở
    Thủ Đức - TPHCM
    Bài viết
    49

    Angry [Solved]Lấy Giá Trị Trả về của 1 stored procudure

    Các bạn có thể giúp mình nhận lại giá trị trả về của 1 câu truy vấn hay của 1 stored procudure ,mình loay hoay hoài mà không được các bạn ơi ,giúp mình với nhé.

  2. #2
    Ngày gia nhập
    06 2007
    Nơi ở
    TP.HCM
    Bài viết
    113

    Trích dẫn Nguyên bản được gửi bởi minhitcn2 Xem bài viết
    Các bạn có thể giúp mình nhận lại giá trị trả về của 1 câu truy vấn hay của 1 stored procudure ,mình loay hoay hoài mà không được các bạn ơi ,giúp mình với nhé.
    Giá trị trả về của SP thường là table, dù là 1 giá trị thì nó cũng được trả về qua truy vấn select nên luôn là table. Vậy để lấy giá trị chỉ cần dùng sqlDataAdapter để đổ dữ liệu vào DataTable và dùng cái DataTable thôi.

    Tham khảo thử đoạn code sau, chỉ là test chơi nên cố gắng trang trí lại code, và sử dụng theo cách nào thì tùy.
    Code:
                SqlConnection myCon = new SqlConnection();
                myCon.ConnectionString = "server=SUNFLOWER; uid=sa; pwd=; database=DEMO;";
                SqlDataAdapter myAdapter;// = new SqlDataAdapter();
               
                SqlCommand command = new SqlCommand();
                command.CommandText = "spTest"; //Store có tên spTest
                command.Connection = myCon;
                command.CommandType = CommandType.StoredProcedure;
    
                DataTable myTable = new DataTable();
                myAdapter = new SqlDataAdapter(command);
                myAdapter.Fill(myTable);
    
                 //Chỉ dùng vòng này để test thôi. Nếu muốn dùng cái grid để hiển thị lên cho nó đẹp.
                for (int i = 0; i < myTable.Rows.Count; i++)
                {
                    MessageBox.Show(myTable.Rows[i][0].ToString());
                }

    Gác Kiếm

  3. #3
    Ngày gia nhập
    11 2007
    Bài viết
    294

    Cái hàm của sun thiếu đoạn truyền parameter cho sp .
    Cơ bản là cách của sun là đơn giản và dễ hiểu nhất rồi .
    Is the moon rising...

  4. #4
    Ngày gia nhập
    06 2007
    Nơi ở
    TP.HCM
    Bài viết
    113

    Trích dẫn Nguyên bản được gửi bởi darkan Xem bài viết
    Cái hàm của sun thiếu đoạn truyền parameter cho sp .
    Cơ bản là cách của sun là đơn giản và dễ hiểu nhất rồi .
    Uhm! Thì tuỳ sp nào có tham số thì truyền tham số, chứ sp ở trên hổng có nên...

    Gác Kiếm

  5. #5
    Ngày gia nhập
    08 2006
    Nơi ở
    tp HCM
    Bài viết
    26

    Trích dẫn Nguyên bản được gửi bởi minhitcn2 Xem bài viết
    Các bạn có thể giúp mình nhận lại giá trị trả về của 1 câu truy vấn hay của 1 stored procudure ,mình loay hoay hoài mà không được các bạn ơi ,giúp mình với nhé.
    để nhận giá trị trả về của một câu truy vấn thì bạn sun đã nói rồi, tôi nói thêm phần nhận giá trị trả về từ một SP bằng một ví dụ minh họa sau đây:

    Sau đây là 1 ví dụ đơn giản minh họa cho việc sử dụng các lệnh ExecuteScalar để gọi thực hiện SP.
    Giả sử có Server-name là ABC, Database-name là SX-TT, và table-name là sanpham gồm các field sau:
    MaSanPham Char(5)
    TenSanPham Char(50)
    Donvitinh Char(10)
    Sochai Int
    Dungtich Numeric(9,0)

    SP thuout_sanpham dùng để lấy tên sản phẩm và đơn vị tính của record thoả điều kiện mã sản phẩm.

    Nội dung của các Stored Procedure :
    Code:
    CREATE PROCEDURE  thuout_sanpham 
     @Masp char(5),
     @Donvi char(50) OUTPUT,
     @dvt char(10) OUTPUT
     AS
    SELECT  @Donvi = TenSanPham , @dvt = Donvitinh  FROM Sanpham  Where MaSanpham = @Masp
    lệnh ExecuteScalar dùng gọi thực hiện SP để trả về từng giá trị riêng lẻ. Đọan code sau đây gọi thực hiện SP thuout_sanpham, SP này có 3 tham số: 1 tham số input là @Masp dùng để đưa mã sản phẩm vào cho SP, 2 tham số output là @Donvi và @dvt dùng để lấy tên sản phẩm và đơn vị tính của mẫu tin có mã sản phẩm trùng với mã sản phẩm đưa vào qua tham số @Masp.

    Code:
    public static bool  Get_SP(string masp)
    {
    	SqlConnection conn = new SqlConnection();
    	conn.ConnectionString = "Integrated Security=SSPI;Initial Catalog=SX-TT;Data Source=ABC;";
    	SqlCommand cmd = new SqlCommand();
    	cmd.Connection = conn;
    	cmd.CommandType = CommandType.StoredProcedure;
    	cmd.CommandText = "thuout_sanpham";
    	SqlParameter p1 = new SqlParameter("@Masp",masp);
    	cmd.Parameters.Add(p1);
    	SqlParameter p2 = new SqlParameter("@Donvi",SqlDbType.Char,50);
    	cmd.Parameters.Add(p2);
    	p2.Direction = ParameterDirection.Output;
    	SqlParameter p3 = new SqlParameter("@dvt",SqlDbType.Char,10);
    	cmd.Parameters.Add(p3);
    	p3.Direction = ParameterDirection.Output;
    	try 
               { 
    	       conn.Open();	
    	       cmd.ExecuteScalar();
               } 
    	catch (Exception ex)
    	{
    		MessageBox.Show(ex.ToString()); 
    		conn.Close();
    		return false;
    	}		
    	MessageBox.Show(p2.Value.ToString()+" , "+p3.Value.ToString());
    			
    	conn.Close();
    	return true;			
    }
    Đã được chỉnh sửa lần cuối bởi minhtruc : 24-01-2008 lúc 07:59 AM.

  6. #6
    Ngày gia nhập
    06 2007
    Nơi ở
    Hà nội
    Bài viết
    77

    Mặc định [Solved]Lấy Giá Trị Trả về của 1 stored procudure

    òi,các bác trả hiểu ý tác giả,đang muốn hỏi câu truy vấn trả về table
    bản thân câu "select..." đã trả về table,tuy nhiên có thể tạo 1 hàm trả về table
    đơn giản tạo 1 hàm
    PHP Code:
    use mydatbase
    go
    create 
    function function_name(parameter nếu có)
    returns table
    as
    return (
    select from table_name1,table_name2,... where [điều kiện]... )
    go 
    cách dùng
    PHP Code:
    select from dbo.function_name(parameter nếu có
    Sống ở trên đời cần có một TẤM LÒNG để lúc đói còn có chỗ mà nhét THỨC ĂN

Các đề tài tương tự

  1. Database Thực hiện được câu stored procedure nhưng không trả trị được
    Gửi bởi dieunhatminh trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 4
    Bài viết cuối: 26-06-2012, 05:19 PM
  2. crystal report không hiểu giá trị trả về của stored procedure
    Gửi bởi khaihkd trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 0
    Bài viết cuối: 03-11-2011, 08:56 AM
  3. Lấy giá trị trả về từ SQL Stored Procedures bằng LINQ?
    Gửi bởi okmen_panda trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 5
    Bài viết cuối: 30-08-2011, 07:08 PM
  4. Biến trả lấy giá trị trả về trong Stored Procedure
    Gửi bởi iamonlining trong diễn đàn Thắc mắc Microsoft SQL Server & Microsoft Access
    Trả lời: 6
    Bài viết cuối: 16-12-2009, 05:24 PM
  5. [Solved]Tìm hiểu Stored Procedure trong SQL-SERVER 2000
    Gửi bởi minhtruc trong diễn đàn Thắc mắc đại cương Database & Reporting
    Trả lời: 1
    Bài viết cuối: 15-10-2006, 01:48 AM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn