Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,028

HOME > .NET Framework > Forum > รบกวนดูวิธีการ check ค่า gridview โดยการวนลูปบรรทัดแรกถึงบรรทัดสุด้ายนำไปเช็คกับตารางใน database ถ้าตรงกันให้แจ้งซ้ำด้วยครับ



 

รบกวนดูวิธีการ check ค่า gridview โดยการวนลูปบรรทัดแรกถึงบรรทัดสุด้ายนำไปเช็คกับตารางใน database ถ้าตรงกันให้แจ้งซ้ำด้วยครับ

 



Topic : 133839



โพสกระทู้ ( 397 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook



Code (C#)
  foreach(DataGridView row in dgv2.Rows)
                {
                for(int i = 0; i < dgv2.Columns.Count; i++)
                {        
                    cmd1 = new SqlCommand("select * from Cometowork1 where Empid=@Empid and Date=@Date", con);
                    cmd1.Parameters.AddWithValue("@Empid", Convert.ToString(dgv2.Rows[i].Cells[0].Value ?? DBNull.Value));
                    cmd1.Parameters.AddWithValue("@Date", dtp1.Text);   
                    SqlDataAdapter da1 = new SqlDataAdapter(cmd1);
                    da1.Fill(ds1);
                   int i = ds1.Tables[0].Rows.Count; 
                    if (i > 0)
                    {
                        DialogResult result = MessageBox.Show("ข้อมูลซ้ำโปรดตรวจสอบ", "ERROR!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        ds1.Clear();
                    }   
                    else


รบกวนดู code ให้ด้วยครับ ผมต้องการนำค่าใน gridview ทั้งหมดวน loop ทีละบรรทัดถ้าบรรทัดไหนมี Empid และวันที่ ตรงกับ database ของตาราง Cometowork1 ให้แจ้ง error ถ้าไม่มีผมจะทำการเซฟครับ



Tag : .NET, C#, VS 2012 (.NET 4.x)







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2019-07-03 15:26:54 By : sakkapong View : 2103 Reply : 6
 

 

No. 1



โพสกระทู้ ( 1,458 )
บทความ ( 0 )



สถานะออฟไลน์
Twitter Facebook Blogger

ติดตรงไหนครับ แจ้ง error ว่าอะไร

จากที่ดูแบบหยาบๆ
line 6: i เป็นตัวแปรที่ใช้สำหรับ Column แต่ทำไมเอาไปใช้กับเมธอด Rows() แล้ว row จาก foreach มีไว้ทำอะไรครับ
line 9: ds1 ให้เดาน่าจะหมายถึง Dataset ถ้าใช่แล้วสร้างไว้ตรงไหน

ลองเปลี่ยน query จาก select * เป็น select count(*) แล้วใช้ ExecuteReader() หรือ ExecuteScalar() ดูหรือยังครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-07-04 18:13:46 By : PhrayaDev
 


 

No. 2



โพสกระทู้ ( 9,559 )
บทความ ( 2 )



สถานะออฟไลน์


column ไม่ต้อง loop คุณจะทำอะไรกับทุก cell หรือเปล่า
เอาแค่ ข้อมูลเฉพาะ cell มาตรวจสอบ

และการอ้างตัวแปร ก็ไม่จำเป็นต้องอ้างจาก ต้นตอแล้ว เอาตัวแปรที่ ผ่านค่ามาใช้ได้เลย

foreach(DataGridView row in dgv2.Rows)
var id = row.Cells[ตำแหน่งที่ต้องการ].value;


ประวัติการแก้ไข
2019-07-05 07:18:28
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-07-05 07:17:51 By : Chaidhanan
 

 

No. 3

Guest


Code (C#)
foreach(DataGridView row in dgv2.Rows)
              {
              for(int i = 0; i < dgv2.Columns.Count; i++)
              {        
                  cmd1 = new SqlCommand("select * from Cometowork1 where Empid=@Empid and Date=@Date", con);
                  cmd1.Parameters.AddWithValue("@Empid", Convert.ToString(dgv2.Rows[i].Cells[0].Value ?? DBNull.Value));
                  cmd1.Parameters.AddWithValue("@Date", dtp1.Text);   
                  SqlDataAdapter da1 = new SqlDataAdapter(cmd1);
                  da1.Fill(ds1);
                 int i = ds1.Tables[0].Rows.Count; 
                  if (i > 0)
                  {
                      DialogResult result = MessageBox.Show("ข้อมูลซ้ำโปรดตรวจสอบ", "ERROR!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                      ds1.Clear();
                  }   
                  else



วิธีการคิด/วิธีการเขียนโปรแกรมของคุณผิดหมด อยู่อนุบาล 1 ในขุมนรก ยังไม่ได้เลย ทำได้อย่างเดียว อ้าปากแล้วรอแม่เขี่ยหัวนมให้ตรงปาก

ให้เอาไปคิดเป็นการบ้าน 1 วินาที Transactions เป็นล้านฯ รายการ เขาทำกันอย่างไร?
--- คุณโชคร้าย เขาไม่บอกคุณ แต่เขาบอกผม (ผมโชคดี)
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-07-05 13:12:50 By : xxx
 


 

No. 4

Guest


@K-YON, ALL
ลูกศิษย์มันมีข้อสงสัย ก็เลยยกตัวอย่างมาให้ดู (พ.ศ. 2533 ก่อนหน้านั้นก็เคยเขียน)

MySQL 5.xx.xx VS SQLServer 2008/etc... Pass String Array To Stored Procedure (17/06/2553)

ส่งค่าไปประมาณนี้ 1, 2, 3, 4, 5

จริงฯแล้วผมให้เขาดู Unix/Linux/Windows และ HMI/PLC-CNC/SCADA/IoT/etc...


คิดว่า Mobile First (Web App/Windows App --- ไม่อยู่ในสายตา)

Code (SQL)
USE [YourDB]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
 
IF OBJECT_ID ( '[dbo].[msrFormPerm_usp01]', 'P' ) IS NOT NULL
    DROP PROCEDURE [dbo].[msrFormPerm_usp01]
GO
 
CREATE PROCEDURE [dbo].[msrFormPerm_usp01]
(
 @PageID AS int = 0,
 @RoleIDc AS nvarchar(MAX) = '',
 @UserID AS int = 0
) 
AS
BEGIN
 SET NOCOUNT ON ;
  
 DECLARE @strSQL AS nvarchar(MAX) ='' ;
     
   SET @strSQL = 'SELECT c.ACL,
                   0 As Flag,
                   0 As Priority
                   FROM msrFormPerm c WHERE c.PageID ='
                   + CAST(@PageID AS varchar)
                   + ' '
                   + 'AND (c.RoleID = 0 OR c.RoleID IS NULL) AND c.UserID ='
                   + ' '
                   + CAST(@UserID AS varchar)
                   + ' '
                   + 'AND c.IsActive = 1'
                   + ' '
                   + 'UNION ALL'
                   + ' '
                   + 'SELECT a.ACL,
                   1 As Flag,
                   b.Priority
                   FROM msrFormPerm a INNER JOIN msrRoles b ON a.RoleID = b.RoleID
                   WHERE a.PageID ='
                   + ' '
                   + CAST(@PageID AS varchar)
                   + ' '
                   + 'AND a.RoleID IN('
                   + @RoleIDc
                   + ') '
                   + 'AND (a.UserID = 0 OR a.UserID IS NULL) AND a.IsActive = 1 AND b.IsActive = 1' ;
                        
    EXEC sp_executesql @strSQL ;
     
END
GO

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-07-08 09:21:23 By : หน้าฮี
 


 

No. 5

Guest


อันนี้เป็น MySQL/อื่นฯ มันก็ไม่แตกต่างกันอทิเช่น ORACLE/DB2/etc...
(ยกตัวอย่างแค่ พื้นฐาน กลัวจะไม่เข้าใจ)

Code (SQL)
-- =============================================
-- Author:  Herudoy
-- Create date: 17 มิถุนายน พ.ศ. 2553
-- Description: SQLServer 2008 Express
-- (การผ่านค่า String Array ให้กับ Stored Procedure)
-- =============================================
DROP PROCEDURE IF EXISTS wsdb.msrFormPerm_usp01;
 
CREATE PROCEDURE wsdb.`msrFormPerm_usp01`(IN `PageID` int, IN `RoleIDc` varchar(20000), IN `UserID` int)
    READS SQL DATA
 
BEGIN
 SET @strSQL = CONCAT('SELECT c.ACL,
                       0 As Flag,
                       0 As Priority
                       FROM msrFormPerm c WHERE c.PageID ='
                       , PageID
                       , ' '
                       , 'AND (c.RoleID = 0 OR c.RoleID IS NULL) AND c.UserID ='
                       , ' '
                       , UserID
                       , ' '
                       , 'AND c.IsActive = 1'
                       , ' '
                       , 'UNION ALL'
                       , ' '
                       , 'SELECT a.ACL,
                       1 As Flag,
                       b.Priority
                       FROM msrFormPerm a INNER JOIN msrRoles b ON a.RoleID = b.RoleID
                       WHERE a.PageID ='
                       , ' '
                       , PageID
                       , ' '
                       , 'AND a.RoleID IN('
                       , RoleIDc
                       , ') '
                       , 'AND (a.UserID = 0 OR a.UserID IS NULL) AND a.IsActive = 1 AND b.IsActive = 1') ;
                     
   PREPARE stmt FROM @strSQL ;
   EXECUTE stmt ;
   DEALLOCATE PREPARE stmt ;
   
END;

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-07-08 09:31:24 By : หน้าฮี
 


 

No. 6

Guest


ไอ้เด็กเมื่อวานซืนเขียนให้ผมดู เจ้า xxx ทุกวันนี้มันใช้ C# 8 เขียน async/await บน void main ได้
Code (JavaScript)

function doAjax() {
    $.ajax({
        url: ajaxurl,
        type: 'POST',
        data: {
            stuff: "here"
        },
        success: function (data) {
            //wacky nested anonymous callbacks go here
            var something_but_not_really = data;
        },
        error: function (jqXHR, textStatus, errorThrown) {
            // Empty most of the time...
        }
    });

    return something_but_not_really
}


async function doAjax(args) {
    const result = await $.ajax({
        url: ajaxurl,
        type: 'POST',
        data: args
    });

    return result;
}


async function doAjax(args) {
    let result;

    try {
        result = await $.ajax({
            url: ajaxurl,
            type: 'POST',
            data: args
        });

        return result;
    } catch (error) {
        console.error(error);
    }
}

//Method 1
const stuff = await doAjax();

//Method 2
doAjax().then((data) => doStuff(data))

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-07-08 10:19:58 By : หน้าฮี
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : รบกวนดูวิธีการ check ค่า gridview โดยการวนลูปบรรทัดแรกถึงบรรทัดสุด้ายนำไปเช็คกับตารางใน database ถ้าตรงกันให้แจ้งซ้ำด้วยครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 05
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่