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 > (พี่codemanถ้าออนช่วยเข้ามาดูหน่อย)บันทึกข้อมูลลงฐานข้อมูลAutonumber PrimaryKeyแล้วบันทึกค่ายังว่างแต่ยังบันทึกได้



 

(พี่codemanถ้าออนช่วยเข้ามาดูหน่อย)บันทึกข้อมูลลงฐานข้อมูลAutonumber PrimaryKeyแล้วบันทึกค่ายังว่างแต่ยังบันทึกได้

 



Topic : 035789



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



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




บันทึกข้อมูลลงฐานข้อมูลrun autonumber PKแล้วค่าที่บันทึกยังว่าง บันทึกไม่สำเร็จ ข้อมูลไม่มีแต่เมื่อเข้าไปดูในฐานข้อมูล(sqlserver2005)กลับมีข้อมูลยังบันทึกได้ คือ ไม่มีข้อมูลแต่PKกลับรันค่าต่อ บันทึกข้อมูลว่างหรือบันทึกข้อมูลที่กรอกไม่ครบยังบันทึกได้ primary key ยังรันต่อไปเรื่อยๆ บันทึกสำเร็จไม่สำเร็จผิดพลาดยังไงมันก็รันต่อ ต้องแก้ยังไงครับ ไม่ให้รันในการบันทึกข้อมูลที่ไม่สำเร็จหรือผิดพลาด เขียนให้ตรวจสอบค่าว่างก่อนเเล้วPKก็ยังรัน คือ กดบันทึก แล้วกลับไปกรอกใหม่ที่ขึ้นตรวจสอบPKกลับรันค่าแล้ว เขียนcodeไม่สามารถบันทึกได้แล้วแต่autonumberมันก็รันค่า
เมื่อบันทึกใหม่ค่าที่รันก็ไม่ติดต่อกัน



Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2009-12-15 03:45:32 By : topflight View : 1356 Reply : 9
 

 

No. 1



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

สมาชิกที่ใส่เสื้อไทยครีเอท

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


สร้าง function ในการ insert ข้อมูลไว้ต่างหากดีกว่าไม๊
แล้วพอกดปุ่ม submit หรือ บันทึก หรือ save อะไรก็แล้วแต่ให้ ทำการตรวจสอบข้อมูลที่กรอกให้เรียบร้อยก่อน
ถ้าเรียบร้อยแล้วก็ค่อยไปเรียก function สำหรับ insert ครับ

เอาไปแปลงเป็น code ดูเนาะ จริงๆ จากที่เขียนมาก็เห็นว่าคิดได้และนะ ติดอีกนิดหน่อยเอง ลองดูๆ คิดอีกๆๆ
Code: อะไรก็ไม่รู้
private function InsertData() as integer
blah blah blah
return res
end function

private sub Submit_Clieck()
dim dataOk as boolean
dataOk = false
1. validate all enter values.
2. if it's correct in your condition dataOk = true
3. if dataOk = true call InsertData()
end sub







Date : 2009-12-15 10:07:52 By : salapao_codeman
 


 

No. 2

Guest


ตรงไหนช่วยชี้แนะอีกนิดได้ไม คิดไม่ออก
Date : 2009-12-15 13:09:01 By : topflight
 

 

No. 3



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

สมาชิกที่ใส่เสื้อไทยครีเอท

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


ช่วยเอา code event ตอนกด submit มากางหน่อย คือถ้ายังไม่เรียก command query auto increment ของ col มันก็ยังไม่นับให้นะ ที่บอกไป ก็ใช้ได้แล้วแค่เอาไปแปลงเป็น code ใช้งานจริงๆ แค่นั้น

เอา table structure ของที่ใช้คู่กันตอนกด submit ด้วยนะ เช่น
column name , data type , key index, parameter
ProductID, integer, PK, Auto increment
ProductName, nvarchar, ,
CateID, integer, idx, ,

** PK = Primary Key
idx = index column
Date : 2009-12-15 21:43:09 By : salapao_codeman
 


 

No. 4



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



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


Code (VB.NET)
strSQL = "INSERT INTO  Customer(CusName,CusAge,CusAddress,CusTel) " & _
        " VALUES " & _
        " ('" & Me.txtName.Text & "','" & Me.txtAge.Text & "','" & Me.txtAddress.Text & "', " & _" '" & Me.txtTel.Text  & " ')"
        objCmd = New SqlCommand(strSQL, objConn)
        With objCmd
            .Connection = objConn
            .CommandText = strSQL
            .CommandType = CommandType.Text
        End With

        Try
            objCmd.ExecuteNonQuery()
            If (txtname.Text = "") Or (txtAddress.Text = "") Or (txtTel.Text = "") Then
                Response.Write("<script language=javascript>if(window.alert('กรุณากรอกข้อมูลให้ครบ'))</script>")
            Else
                Response.Write("<script language=javascript>if(window.alert('บันทึกสำเร็จ'))</script>")
            End If


        Catch ex As Exception
            Response.Write("<script language=javascript>if(window.alert('ไม่สามารถบันทึกข้อมูลได้'))</script>")
        End Try
     
        objConn.Close()
        objConn = Nothing

พวกประกาศตัวแปรอยู่ในpage load
PK CusID int autonum
CusName nvarchar(50)
CusAge float
CusAddress nvarchar(100)
CusTel nvarchar(14)

ขอบคุณมากๆครับ
Date : 2009-12-15 22:40:22 By : topflight
 


 

No. 5



โพสกระทู้ ( 11,835 )
บทความ ( 10 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

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


strSQL = "INSERT INTO Customer(CusName,CusAge,CusAddress,CusTel,) " & _
" VALUES " & _
" ('" & Me.txtName.Text & "','" & Me.txtAge.Text & "','" & Me.txtAddress.Text & "', " & _" '" & Me.txtTel.Text & " ')"
Date : 2009-12-15 23:18:16 By : plakrim
 


 

No. 6

Guest


ถูก อย่างของคุณ PlaKrim บอกครับ script query ผิดเพราะมี , เกินมาอันนึงครับ ส่วนที่บอกว่า autonum มันเพิ่มทุกครั้งยังงงอยู่ครับ เพราะผมมาลองทำให้ error ตามนี้ดูแล้ว ก็จะติด exception นะครับ
และ column ที่เป็น auto increment ก็ไม่เพิ่มด้วยอ่ะครับ

เวลากำหนดให้เป็น auto increment ทำแบบนี้ใช่ป่ะครับ
tb_increment_col

อันนี้ข้อมูลที่ลองทดสอบ
tb_increment_data
Date : 2009-12-16 00:14:41 By : salapao_codeman
 


 

No. 7



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



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


ตรงที่เกินตอนลงเว็บใส่ผิดเองลืมดู
เวลากำหนดให้เป็น auto increment ทำแบบนี้ใช่ป่ะครับ ----->ใช่คับ
คือสมมติบันทึกโดยไม่กรอกข้อมูลcodeที่เขียนขึ้นมันก็รัน แล้วพอบันทึกใหม่มันก็ข้ามไปเลย
เช่น PK 8แล้วไป10 25ไป27 เลขที่ข้ามไปเกิดจากบันทึกไม่สำเร็จ สามารถsetให้เริ่มจากC0001ได้ไม
Date : 2009-12-16 01:06:02 By : topflight
 


 

No. 8



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

สมาชิกที่ใส่เสื้อไทยครีเอท

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


อืม แปลกๆ ยังไงลอง add มาคุยกันดูครับสงสัยจริงทำไมมันเพิ่มได้ [email protected]

ส่วนนี่เป็นวิธีกำหนดค่าของ table ที่มีการทำ column แบบ incremental ครับ

Code : Query command for SQLServer 2000 and above
dbcc checkident('products',RESEED,0)

**ตรงสีแดง ก็เปลี่ยนเป็นชื่อ table ที่เราต้องการกำหนดค่าใหม่ครับ อย่างตัวอย่างนี้คือ reset ให้เป็น 0 เพื่อให้เริ่มใหม่

Date : 2009-12-16 08:37:14 By : salapao_codeman
 


 

No. 9



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



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


ไม่รู้เกี่ยวกับอันนี้หรือเปล่า
Code (VB.NET)
 objCmd = New SqlCommand(strSQL, objConn)
        strSQL = "Select top 1 CusID from customer order by CusID DESC"
        With objCmd
            .Connection = objConn
            .CommandText = strSQL
            .CommandType = CommandType.Text
        End With
        Dim reader As SqlDataReader = objCmd.ExecuteReader()
        reader.Read()
        Dim MaxCusID As String = reader("CusID")
        reader.Close()

        objConn.Close()
        objConn = Nothing

        Session("CustomerID") = MaxCusID

Date : 2009-12-16 23:21:35 By : topflight
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : (พี่codemanถ้าออนช่วยเข้ามาดูหน่อย)บันทึกข้อมูลลงฐานข้อมูลAutonumber PrimaryKeyแล้วบันทึกค่ายังว่างแต่ยังบันทึกได้
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 อัตราราคา คลิกที่นี่