คำถามติดแท็ก sqldatareader

26
SQL Data Reader - การจัดการค่าคอลัมน์ Null
ฉันใช้ SQLdatareader เพื่อสร้าง POCO จากฐานข้อมูล รหัสทำงานยกเว้นเมื่อพบค่า Null ในฐานข้อมูล ตัวอย่างเช่นหากคอลัมน์ FirstName ในฐานข้อมูลมีค่า Null ข้อผิดพลาดจะถูกส่งออกไป employee.FirstName = sqlreader.GetString(indexFirstName); วิธีที่ดีที่สุดในการจัดการค่าว่างในสถานการณ์นี้คืออะไร?
297 c#  sqldatareader 


25
ตรวจสอบชื่อคอลัมน์ในวัตถุ SqlDataReader
ฉันจะตรวจสอบเพื่อดูว่ามีคอลัมน์ในSqlDataReaderวัตถุได้อย่างไร ในชั้นการเข้าถึงข้อมูลของฉันฉันได้สร้างวิธีการที่สร้างวัตถุเดียวกันสำหรับการเรียกกระบวนงานที่เก็บไว้หลายรายการ หนึ่งในกระบวนงานที่เก็บไว้มีคอลัมน์เพิ่มเติมที่ไม่ได้ใช้โดยขั้นตอนการจัดเก็บอื่น ๆ ฉันต้องการแก้ไขวิธีการเพื่อรองรับทุกสถานการณ์ ใบสมัครของฉันเขียนด้วยภาษา C #
212 c#  .net  sqldatareader 

13
อ่านข้อมูลจาก SqlDataReader
ฉันมีฐานข้อมูล SQL Server 2008 และฉันกำลังทำงานอยู่ในส่วนแบ็คเอนด์ ฉันกำลังทำงานกับ asp.net/C# SqlDataReader rdr = cmd.ExecuteReader(); while (rdr.Read()) { //how do I read strings here???? } ฉันรู้ว่าผู้อ่านมีค่า คำสั่ง SQL ของฉันคือการเลือกเพียง 1 คอลัมน์จากตาราง คอลัมน์มีสตริงเท่านั้น ฉันต้องการอ่านสตริง (แถว) ในเครื่องอ่านทีละตัว ฉันจะทำสิ่งนี้ได้อย่างไร

6
วิธีรับจำนวนแถวโดยใช้ SqlDataReader ใน C #
คำถามของฉันคือวิธีรับจำนวนแถวที่ส่งคืนโดยแบบสอบถามโดยใช้SqlDataReaderใน C # ฉันเคยเห็นคำตอบบางอย่างเกี่ยวกับเรื่องนี้ แต่ไม่มีการกำหนดอย่างชัดเจนยกเว้นคำตอบที่ระบุให้ทำ while loop ด้วยRead()วิธีการและเพิ่มตัวนับ ปัญหาของฉันคือฉันพยายามเติมอาร์เรย์หลายมิติโดยให้แถวแรกเป็นชื่อส่วนหัวของคอลัมน์และทุกแถวหลังจากนั้นเป็นข้อมูลแถว ฉันรู้ว่าฉันสามารถถ่ายโอนข้อมูลในตัวควบคุมรายการได้และไม่ต้องกังวลกับมัน แต่เพื่อการแก้ไขส่วนตัวของฉันเองและฉันต้องการดึงข้อมูลเข้าและออกจากอาร์เรย์เมื่อฉันเลือกและแสดงในรูปแบบต่างๆ ดังนั้นฉันคิดว่าฉันไม่สามารถทำวิธีRead()เพิ่ม ++ ได้แล้วเพราะนั่นหมายความว่าฉันจะต้องเปิดRead()แล้วเปิดRead()อีกครั้งเพื่อรับจำนวนแถวแล้วจึงเป็นข้อมูลคอลัมน์ เป็นเพียงตัวอย่างเล็ก ๆ ของสิ่งที่ฉันกำลังพูดถึง: int counter = 0; while (sqlRead.Read()) { //get rows counter++ } จากนั้นสำหรับลูปเพื่อวิ่งผ่านคอลัมน์และป๊อป something.Read(); int dbFields = sqlRead.FieldCount; for (int i = 0; i < dbFields; i++) { // do stuff to array }
98 c#  sqldatareader 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.