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

Registered : 107,513

HOME > .NET Framework > Forum > C# SQL สอบสอบถามท่านผู้รู้และใช้งานบ่อยๆเกี่ยวกับการเรียกใช้ database





 

C# SQL สอบสอบถามท่านผู้รู้และใช้งานบ่อยๆเกี่ยวกับการเรียกใช้ database

 



Topic : 121704



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



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



ผมหัดเขียนโปรแกรมมาปีกว่า
เริ่มจาก C# vs 2012 ติดต่อ database SQL 2008 ผ่าน Data Source Wizard มาโดยตลอด
ตอนนี้ว่าจะเปลี่ยนจาก Data Source Wizard มาลองใช้ Entity Framework

เลยอยากทราบว่า ถ้าเราไม่เอาแบบเห่อเข้าว่านะครับ

ระหว่าง
1.SQL แบบบ้านๆดั้งเดิม
2.Data Source Wizard
3.Entity Framework

ถ้า database เดียวกัน ตัวไหนทำงานเร็วกว่าเพื่อนรึครับ

พอดีผมอ่าน Entity Framework เหมือนมันเป็น Extension Method ของ SQL แบบบ้านๆดั้งเดิมเลย



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







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2016-03-02 15:41:13 By : lamaka.tor View : 1506 Reply : 30
 

 

No. 1

Guest


Quote:
ระหว่าง
1.SQL แบบบ้านๆดั้งเดิม
2.Data Source Wizard
3.Entity Framework


ถ้า database เดียวกัน ตัวไหนทำงานเร็วกว่าเพื่อนรึครับ

อย่าไปยึดติดกับมัน ถ้าเวลาที่ได้มันไม่แตกต่างกัน เป็นชั่วโมงหรือมากกว่านั้น
คุณลองดู Drapper.NET (มันถูกใช้งานที่นี่ www.stakcOverflow.com)

สำหรับ Query ที่ซับซ้อน 1., 2., 3., ... เอาไม่อยู่หรอกครับ
--- คนเขียน Store Procedure เก่งฯ/เชี่ยวชาญ มันก็ช่วยได้ในระดับหนึ่ง (เน้นว่าระดับหนึ่ง)
--- ... คิดเอาเอง

...
...
...

ปล. เร็วกว่าบางครั้งไม่ใช่เส้นทางที่ผมเลือกเดิน
--- การเขียน SQL Query ใหม่มันไม่ยากแต่มันยากตรงที่ "สิบปีที่ผ่านมา SQL Qeury เดิม มันก็ยังทำงานได้ถูกต้องเสมอ"






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-02 23:15:55 By : หน้าฮี
 


 

No. 2



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



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

ตอบความคิดเห็นที่ : 1 เขียนโดย : หน้าฮี เมื่อวันที่ 2016-03-02 23:15:55
รายละเอียดของการตอบ ::
"สิบปีที่ผ่านมา SQL Qeury เดิม มันก็ยังทำงานได้ถูกต้องเสมอ"

SQL Qeury เดิม ก็ยังโยนเข้า Data Source Wizard กับ Entity Framework ได้เหมือนกันใช่ไม๊ครับรวมทั้งการใช้ parameter ต่างๆด้วย

ผมชอบ Data Source Wizard กับ Entity Framework อย่างหนึ่งคือ ลากวางๆๆได้แบบง่าย
มันทำให้การเขียนโปรแกรม database จับต้องได้ง่ายครับ

วันหนึ่ง บัญชีปวดหัวกับการดึงข้อมูลจาก database เนื่องจากโปรแกรมไม่ตอบโจทญ์
ผมจึงลองดู Database เห็นว่าเป็น Access ผมเลยบอกบัญชีไปว่า หวานเลยพี่ เด๋วผมจะบอกวิธีดึงข้อมูลมาใช้ละกัน
ผมลง VS 2012 แล้วสร้างโปรเจคมาตัวหนึ่ง Add Data Source แล้วบอกบัญชีว่า อยากได้อะไรมาแสดงพี่ก็ลากวางๆๆๆๆ ได้เลยครับ
เหมือนว่าทุกวันนี้บัญชีไม่ได้เรียกคนขายโปรแกรมมาดูอีกแล้วครับแกบอกใช้แบบนี้ดีกว่า



ประวัติการแก้ไข
2016-03-03 08:23:29
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-03 08:22:07 By : lamaka.tor
 

 

No. 3



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



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

ทำไม Entity Framework ไม่ยัด SQL ลงใน Designer เหมือน Data Source Wizard รึครับ
แถมยังไม่มี Qeury wizard ด้วยครับ
แต่ดูเหมือน Entity Framework จะแหกออกไปเลยนะครับ

Designer ใช้ System.Data.Objects เป็นหลัก โดยไม่ยุ่งกับ Dataset,Datatable,Rows ไปเลย
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-03 08:36:09 By : lamaka.tor
 


 

No. 4



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



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


ออกตัวก่อนน่ะครับว่าผมไม่ใช่ Programmer แค่พอได้เขียนบ้าง บางเวลา

ผมเคยลองเขียนผ่าน Data Wizard ในช่วงแรก
พบปัญหาว่า Query ที่ได้ มันไม่สามารถทำ SubQuery แบบหลาย ๆ ชั้นได้
ทำได้แค่ Query แบบง่าย ๆ เท่านั้น
และจำได้ว่ามันมีไฟล์ xml (มั้ง) โผล่มาเป็นจำนวนมาก ==> ตอนนั้นก็ไม่เข้าใจว่า ไฟล์อะไร โผล่มาทำไม
เวลาที่ต้องการแก้ไข Query ก็ทำได้ค่อนข้างยาก


ต่อมาก็เลยเปลี่ยนไปเป็นแบบ Pure SQL เลย
และก็ใช้มาเรื่อย ๆ
ทุกอย่างทำใน Code
เวลาแก้ไขก็ง่าย ๆ

เคยไปลองใช้ EF ได้นิดหน่อย ตามประสาคนไม่รู้เรื่องแบบผม
ก็พบว่า ทำไมชีวิตมันลำบากขนาดนี้
แค่จะทำอะไรนิด ๆ หน่อย ต้องทำนู้นนี่นั้นตั้งมากมาย
ใช้เวลาตั้งหลายชั่วโมงในการทำงาน
ทั้งที่แบบที่ใช้ประจำ เขียน code แค่ 4-5 บรรทัดก็ทำงานได้แล้ว

ในเรื่องของความเร็ว
ผมเข้าใจว่า แบบ 1,2 น่าจะไม่ต่างกัน
เพราะข้อ 2 มันก็แค่เป็นตัวสร้าง Query ให้แค่นั้น

แต่ข้อ 3 ตัว EF มันจะเป็นตัวกลางในการทำงานอีกที
คือเราต้องส่งคำสั่งไปที่ EF แล้วมันจะไปติดต่อที่ SQL อีกที
แต่ความง่ายของ EF คือ
มันรองรับ Database ได้หลายตัว
เรารู้แค่คำสั่ง EF ก็พอ
จะไปต่อกับอะไรก็ได้ เดี๋ยวมันจัดการให้เอง

ผมไม่เก่งน่ะครับ ก็อยากแชร์ข้อมูลให้บ้าง ^___^
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-03 08:51:31 By : fonfire
 


 

No. 5

Guest


sql แบบบ้านๆ
- ไม่เป็น object
- secure ตาม code ของใครของมัน
- เนื่องจากไม่เป็น object เลยไม่มี intelisance ช่วย ก็จำ command เอง
- debug ยาก กว่าจะรู้ว่าผิด ก็ error ไปแระ
- ข้อเสียเยอะ ขี้เกียจพิมพ์

wizard
- noob

ef
- ไม่มีเหตุผล เราใช้ แสดงว่าดี
- ขี้เกียจพิมพ์
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-03 08:57:02 By : ห้ามตอบเกินวันละ 2 กระทู้
 


 

No. 6

Guest


จาก #NO2 คุณเป็นโปรแกรมเมอร์ที่โชคดี ที่มีเพื่อนร่วมงานเป็นนักบัญชีเก่งฯ
แต่ใช่ว่าทุกฯคนจะโชคดีเหมือนคุณ
--- ส่วนใหญ่มักจะเจอเพื่อนร่วมงานเป็นแบบนี้
------ รู้ทุกเรื่อง เก่งทุกอย่าง พูดได้ทุกภาษา ยกเว้น "ภาษาคน"

ุถ้าบัญชีของคุณสามารถดึงข้อมูลได้ระดับนี้ แจ๋วแหว๋ว และเป็นแผนก/ฝ่ายที่น่าเกรงขามมากฯ

gl_rpt_13

จาก #NO 3 คุณก็ลองฯอ่านดูจากเอกสารของ MSDN
--- โชคดีที่มันเป็นภาษาอังกฤษ ไม่อย่างนั้นต้องเสียเวลา แปลไทยเป็นไทย
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-03 09:21:54 By : หน้าฮี
 


 

No. 7



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



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

ตอบความคิดเห็นที่ : 6 เขียนโดย : หน้าฮี เมื่อวันที่ 2016-03-03 09:21:54
รายละเอียดของการตอบ ::
คุณเป็นโปรแกรมเมอร์ที่โชคดี ที่มีเพื่อนร่วมงานเป็นนักบัญชีเก่งฯ
ไม่น่าใช่น่ะครับพี่ เพราะบัญชีที่ออฟฟิสก็ไม่รู้เรื่องบัญชีเอาซะเลย
ทำงานจะเป็นปีแล้วเวลาปิดงบยังต้องจ้างให้ข้างนอกมาสอนอยู่เลย

แต่ต้องยอมรับจริงๆว่า VS กับ wizard ทำให้การเขียนโปรแกรม Database จับต้องได้ง่ายขึ้นครับ
ง่ายซะขนาด บัญชี ที่ไม่รู้ซะด้วยซ้ำครับว่า SQL มันคืออะไร
แต่กลับดึง database มาลง datagrid ได้



แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-03 09:42:30 By : lamaka.tor
 


 

No. 8

Guest


#NO4, #NO5 พวกคุณอธิบายได้ดี ทำให้ผมนึกถึงหัวข้อกระทู้หนึ่ง

โปรแกรมของผมมีฟอร์ม 300 Up ต้องการเปลี่ยนภาษาไทย/อังกฤษ ...
--- ผมนึกอยู่ในใจ (กะใช้งานทั่วจักรวาลเลยมั้ง) โปรแกรมบ้าอะไรว๊ะ
--- มันน่าจะมองออกตั้งแต่ฟอร์มที่ 5 (หลับตาหลับหูเขียนจนเสร็จและพึ่งมานึกได้ Thai/Eng มันต้องทำอย่างไร?)


Quote:
1. sql แบบบ้านๆ
- ผมใช้อันนี้ เหตุผล มันมอบความยืดหยุ่นให้กับผมได้
--- บางครั้งบางคราวผมอาจจะเก็บคำสั่งที่สำคัญฯเอาไว้ ใน Text File/XML/etc.. ตามที่ผมต้องการ (นึกถึงโปรแกรม Thai/Eng ข้างบน)
2. wizard
- noob

3. ef
- ผมไม่ใช้ เหตุผล ผมใช้อันที่ 1 ไปแล้ว

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


 

No. 9



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



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

แล้วถ้าเราเขียน Extension Method ให้กับ dataset datatable ละครับ
น่าจะดีไม๊ครับ

ตอนนี้ผมทำแบบนั้นอยู่ เพิ่งมารู้ว่ามันคือ Extension Method ก็ตอนศึกษาเกี่ยวกับ LINQ นี่แหละครับ
ก็เลยสงสัยว่า มี EF ไว้ทำไม แล้วทำไมเขาไม่ยัด Extension Method ลงไปเลยใช้ง่ายกว่าเยอะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-03 10:28:07 By : lamaka.tor
 


 

No. 10



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



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

ใช่ว่าทุกคนที่ถือปืนจะเป็น ผู้ผดุงความยุติธรรม เสมอครับ
อาจจะเป็นแค่โจรมุมตึก ปืนก็ปืนปลอม(อ้าวดันเผลอถืออยู่ได้ซะตั้งนาน )
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-03 10:35:57 By : lamaka.tor
 


 

No. 11



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



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

ผมชอบอะไรที่ทุกคนรอบข้างจับต้องได้ครับ
ผมเขียนสูตรใน Excel ได้ สอนคนอื่นซักพักเขาก็เขียน และ ประยุคได้ ครับ
ผมเขียนโปรแกรมได้ สอนคนอื่นซักพักเขาก็เขียน และ ประยุคได้ ครับ
ทั้งๆที่ทุกวันนี้ผมยังเขียน SQL เองยังไม่เป็นเลย


ผมซื้อโทรสับมาตัวหนึ่ง
พอใช้ไปซักพักก็เกิดคำถาม

อ้าวนิจะลบเพลงเพิ่มหนังกันไงละนิ ไหนจะย้ายโน่น โยกนี่ อีก ปรับเปลี่ยนอะไรก็ลำบาก ต้องมานั่งศึกษาอีก
เหมือนจะผูกมัดกันเกิ๊น ไม่มีอิสระในการใช้งาน ไม่ตอบโจทย์
ผมก็เลยซื้อ อีกตัวมาใช้(ตัวเก่ากองในโต๊ะทำงาน)

ผมยัดหนังไปเป็น 100 มันก็ไม่เห็นบ่นซักคำ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-03 10:53:19 By : lamaka.tor
 


 

No. 12

Guest


ถ้าเป็น Windows Application (Client/Server) มันก็ไม่แตกต่างกันมากนัก แต่ถ้าเป็น Web Application
มันคนละเรื่อง อทิเช่น DataSet/DataTable คุณลองผ่าใส้ในของมันออกมาดู
--- มันเก็บทุกฯอย่างอทิเช่น
--- RowState (เพิ่ม/ลบ/แก้ไข)
--- FieldState
...
...
...

ยิ่งเก็บเยอะยิ่งรัปทานหน่วยความจำ (Memory) และยิ่งคุณเขียน Extension เสริมเข้าไปอีกมันก็ดูคล้ายฯว่า
--- ผู้หญิงคนนั้นสวยจังเลย แต่มีรูจมูก 3 รู (ไม่เก่งคณิตนับรูผิดนับรูถูก)

ถ้ารูนี้เราไม่ได้ใช้งานมันเลย มันถึงมีสิ่งนี้ขึ้นมา System.Collection.Generic


ขึ้นต้นเป็นมะลิซ้อนพอแตกใบอ่อนเป็นมะลิลา
--- จาก List(Of Any Type) มันกลายเป็น IEnumerable(Of Any Type) ได้อย่างไร?

Code (VB.NET)
<Serializable> _
Public Class Product
    Public Property ProductID As Integer
    Public Property ProductNameTH As String
    Public Property ProductNameUS As String
    '...
End Class

Public Class GlobalSessions
    Public Property ViewData As New List(Of Object)
    Public Shared ReadOnly Property Current() As GlobalSessions
        Get
            Dim gs = DirectCast(HttpContext.Current.Session("__GS__"), GlobalSessions)
            If gs Is Nothing Then
                gs = New GlobalSessions()
                HttpContext.Current.Session("__GS__") = gs
            End If
            Return gs
        End Get
    End Property

    Public Shared Sub ClearSession()
        GlobalSessions.Current.ViewData.Clear()
        GlobalSessions.Current.ViewData = Nothing
        HttpContext.Current.Session.Clear()
        HttpContext.Current.Session.Abandon()
    End Sub
End Class

'***** ทดสอบ *****
        'Generic List
        Dim lstProduct As New List(Of Product)() From {New Product With {.ProductID = 1, .ProductNameTH = "หอย"},
                                                       New Product With {.ProductID = 2, .ProductNameTH = "อร่อยดี"}
                                                      }

        'Set Values
        GlobalSessions.Current.ViewData = lstProduct.Cast(Of Object).ToList()

        'Get Values มันกลายเป็น 'Generic IEnumerable ได้อย่างไร?
        Dim lstProductGet = GlobalSessions.Current.ViewData.Cast(Of Product)()

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-03 11:23:56 By : หน้าฮี
 


 

No. 13

Guest


คุณลองสังเกตุดูดีฯนะ Source code ตัวอย่างของผม ไม่มี Name Space เลย (Bug ของ VB.NET)
เหตุผล : ผมมองเผื่อเอาไว้ ถ้าสักวันหนึ่งผมจำเป็นต้องเขียน C# ปัญหาจุกจิกกวนใจไม่มีแน่นอน (เตรียมการเอาไว้ตั้งแต่ปีมะโว้โน่น)
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-03 11:47:25 By : หน้าฮี
 


 

No. 14

Guest


จากข้อสงสัยของคุณ และ #NO 12 เขาถึงนิยมเขียน Extensions ใน Generic แทน

1. เขียน Extensions ลงไปใน DataSet/DataTable == พาเมียไปเที่ยว ไกล้ฯและรีบฯกลับบ้าน
2. เขียน Extensions ลงไปใน Generic == พาน้องเมีย/หลายเมียไปเที่ยวไกลฯโน่นเลย จ.เชียงใหม่
-- ขากลับก็แวะ อ.อมก่อย สักคืนสองคืน

ตัวอย่าง
Code (VB.NET)
Imports System.Collections.Generic
Imports System.Linq
Imports System.Reflection
Imports System.Linq.Expressions

Public Module IEnumerableHelper
    Sub New()
    End Sub

    Private orderBy_ As MethodInfo = GetType(Enumerable).GetMethods(BindingFlags.[Static] Or BindingFlags.[Public]) _
                                     .Where(Function(x) x.Name = "OrderBy" AndAlso x.GetParameters().Length = 2).First()

    <System.Runtime.CompilerServices.Extension()> _
    Public Function OrderBy(Of TSource)(source As IEnumerable(Of TSource), propertyName As String) As IEnumerable(Of TSource)
        Dim pi = GetType(TSource).GetProperty(propertyName, BindingFlags.[Public] Or BindingFlags.FlattenHierarchy Or BindingFlags.Instance)
        Dim selectorParam = Expression.Parameter(GetType(TSource), "keySelector")
        Dim sourceParam = Expression.Parameter(GetType(IEnumerable(Of TSource)), "source")
        Return Expression.Lambda(Of Func(Of IEnumerable(Of TSource), 
                                 IOrderedEnumerable(Of TSource)))(Expression.[Call](orderBy_.MakeGenericMethod(GetType(TSource), pi.PropertyType),
                                 sourceParam, Expression.Lambda(GetType(Func(Of ,)).MakeGenericType(GetType(TSource), pi.PropertyType),
                             Expression.[Property](selectorParam, pi), selectorParam)), sourceParam).Compile()(source)
    End Function

    <System.Runtime.CompilerServices.Extension()> _
    Public Function OrderBy(Of TSource)(source As IEnumerable(Of TSource), propertyName As String, ascending As Boolean) As IEnumerable(Of TSource)
        Return If(ascending, source.OrderBy(propertyName), source.OrderBy(propertyName).Reverse())
    End Function

End Module

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-03 12:02:19 By : หน้าฮี
 


 

No. 15



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



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

ตอบความคิดเห็นที่ : 14 เขียนโดย : หน้าฮี เมื่อวันที่ 2016-03-03 12:02:19
รายละเอียดของการตอบ ::
เสียดายครับที่ผมหัดเขียนโปรแกรมแค่ปีเดียว

ไม่งั้นคงแยกออกแล้วครับ ว่า การประกาศทิ้งไว้ กับ ประกาศตอนใช้งานแตกต่างกันยังไง

ว่าแต่ มัน คอรันชั่นกัน เยอะเลยเรอะครับ

รึว่าอย่างที่พี่เขียนไว้นี่ไม่กินแรมใช่ไม๊ครับผมจะได้จำไว้(เอ...รึว่าแค่ปืนปลอม)

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-03 13:31:51 By : lamaka.tor
 


 

No. 16



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



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

หันมาดูอีกที IDM,Bit,firefox ก็กินแรมเยอะจริงๆ แต่คอมก็ไม่ได้ช้าเพราะโปรแกรมที่ผมเขียน

อ้าวแล้วช้าเพราะอะไรรึ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-03 13:35:55 By : lamaka.tor
 


 

No. 17



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



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

ขอตั้งคำถามใหม่นะครับหลังจากกลับมาจากดาวอังคาร


ระหว่าง
1.SQL แบบบ้านๆดั้งเดิม
2.Data Source Wizard
3.Entity Framework

ถ้า database เดียวกัน ตัวไหนทำงานเร็วกว่าเพื่อนรึครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-03 13:49:12 By : lamaka.tor
 


 

No. 18

Guest


ฟันธง
1. Pure SQL (ADO.NET) เร็วมากมาก 5 ดาว
2. Entity Framework เร็วมาก 4 ดาว
3. Data Source Wizard เร็ว 3 ดาว

ผลต่างมันก็แค่เศษเสี้ยววินาที

ลองทดสอบด้วยตัวเอง ตัวอย่าง
Quote:
http://www.exceptionnotfound.net/dapper-vs-entity-framework-vs-ado-net-performance-benchmarking/


จากตัวอย่างเขาเปรียบเทียบกับ Dapper.NET
ผมใช้ Dapper เป็นต้นแบบ ส่วนไหนที่ผมไม่ได้ใช้ผมก็เอาออก (ผมเอาออกประมาณ 90%)
Code (C#)
#if COREFX
using IDbTransaction = System.Data.Common.DbTransaction;
using IDbConnection = System.Data.Common.DbConnection;
using DataException = System.InvalidOperationException;
#else
using System.Threading;
#endif



ปล. บางทีมันจะเปรียบเทียบกันตรงฯ ไม่ได้ ช้า/เร็ว มันขึ้นอยู่กับปัจจัยอื่นฯด้วย อทิเช่น
---- คุณภาพของ SQL Query
---- Database/Table Design (การออกแบบตาราง อันนี้สำคัญมาก)
---- จำนวนข้อมูลมากน้อยแค่ไหน
---- ทำดัชนี (Index)
---- etc...

อีกหน่อยคุณก็จะรู้ด้วยตัวของคุณเอง ข้อดี(ตอนนี้คุณเห็น 100%) + ข้อเส่ีย(ตอนนี้คุณเห็น 0%)
ของ Data Source Wizard
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-03 15:21:23 By : หน้าฮี
 


 

No. 19



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



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

ตอบความคิดเห็นที่ : 8 เขียนโดย : หน้าฮี เมื่อวันที่ 2016-03-03 10:10:58
รายละเอียดของการตอบ ::
ถึงคุณหน้าฮี เป็นโปรเจ็คร้านอาหารครับ ไม่ใช่โปรแกรมบ้าอะไร ผมเพียงแค่รับงานมาในราคาจำนวนนึงจากบริษัทนึง จนมาถึงตอนนี้บริษัทเดิมได้ว่าจ้างให้ผมเขียนใน version eng ครับในราคาจำนวนนึง ผมเพียงแค่สอบความความเห็นเท่านั้นครับว่ามีวิธีไหนบ้างที่ทำงานได้รวดเร็ว
ปล.แม้แต่นิ้วของคนยังยาวไม่เท่ากัน นับประสาอะไรกับความคิดของคน




ประวัติการแก้ไข
2016-03-03 15:48:29
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-03 15:38:43 By : billkyz5
 


 

No. 20



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



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

พอได้แนวทางแล้วครับ
งั้นถามต่อนะครับ
1. พอจะมีทางไม๊ครับที่เราจะดึง ชื่อ tablename กับ column ใน database ออกมาใช้ โดยแค่พิมจุด(.)
แล้วก็จะมีชื่อออกมาให้เลือกได้เลยเหมือน EF
2. พอหมกหมุ่นอยู่กับ database ไปซักพักก็พบว่า เวลาเราเปลี่ยนชื่อ tablename หรือ column ก็ต้องมาแก้ใน code อีก
โดยเฉพาะถ้าเรา ผูกมันกับ control เช่น textbox มีทางไม๊ครับที่พอเราเปลี่ยนชื่อ tablename หรือ column
SQL(หรืออย่างอื่นที่เรียกใช้ database )ก็จะเปลี่ยนตามด้วย
เช่น
this.cODETextBox.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.sONGBindingSource, "CODE", true));
ถ้าเปลี่ยนจาก CODE เป็น CODEID
ก็ให้เปลี่ยนเองเลยเป็น
this.cODETextBox.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.sONGBindingSource, "CODEID", true));
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-03 15:38:51 By : lamaka.tor
 


 

No. 21

Guest


#NO 20
--- คุณลองกลับไปอ่านดู #NO5
(ผมเชื่อว่าทุกฯความต้องการถ้าเรามองว่ามันไม่ใช่ปัญหา มันย่อมมีวิธีแก้ไข เสมอ)

#NO19
--- ตามสะดวกครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-04 19:58:15 By : หน้าฮี
 


 

No. 22

Guest


@TOR_CHEMISTRY "ผมหัดเขียนโปรแกรมมาปีกว่า"
--- ผมก็เช่นเดียวกันครับ เรื่องจริง/ชีวิตจริง ผมเคยมีอายุ 1 ขวบ, 2 ขวบ, 3 ขวบ, ..., จนถึงอายุปัจจุบัน เช่นเดียวกัน
--- มันเป็นไปตามธรรมชาติของมัน
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-04 20:20:37 By : หน้าฮี
 


 

No. 23

Guest


จาก #NO 22 "เรื่องจริง/ชีวิตจริง"
--- วันนี้ผมไป รพ. ตำลวด ขาไปขึ้นทางด่วนลงถนนพระราม 4 เพื่อเข้าถนนอังรีดูนังต์ (ผมหลงไปโน่นสถานีรถไฟหัวลำโพง)
--- สุดท้ายก็ถึงโรงพยาบาลจนได้ และจอดรถเอาไว้ที่เซ็นทรัลเวอร์ (ค่าจอดรถถูกกว่าต่างจังหวัดอีก มันกลับกันซะงั้นฯ)

--- ขากลับออกจากเซ็นทรัลเวอร์ ชิดขวาเอาไว้ เพื่อเลี้ยวขวาเข้าถนนเพชรบุรี-ตัดใหม่ ขึ้นทางด่วนเพื่อมุ่งตรงสู่บางนา--ชลบุรี

ผมมานั่งคิดเล่นฯนะ หอยเอ้ยลงทางด่วนเพชรบุรี-ประตูน้ำ แล้วเลี้ยวขวาก็ถึงโรงพยาบาลแล้ว (ระยะทางประมาณ 2.5 KM.)

ที่เล่าให้ฟังไม่ใช่อะไรหรอก ชีวิตจริง/เรื่องจริง เป็นไตกินนั่นไม่ได้นะ กินโน่นไม่ได้นะ (ผมสอนคนแก่)

โลกมันเดินไปข้างหน้าแต่เมืองไทยมันกลับกัน "เด็กสอนคนแก่ ยิ่งแก่ยิ่งเป็นเด็ก อันนี้เป็นเรื่องจริงนะ"

อนุมานได้ว่า "พยาบานใหญ่กว่าหมอ โรคนี้ต้องรักษาอย่างนั้นและต้องให้ยาแบบนี้" และที่สำคัญ
--- เราในฐานะคนไข้ก็ไม่แตกต่างกับ "หนูทดลองยา"
--- ยาที่ได้จากหมอกินแล้วตายไม่เสียดายชีวา หญ้าที่ได้จากคนรอบข้างหมอกินแล้วไม่หายและไม่ตาย

คิดแล้วเสียดายเงินทอง เสียดายชีวา เสียดายเวลา
...
...
...


ปล. อันนี้เปรียบเทียบในเชิงตรระกะ และไม่มีเจตนาที่จะล่วงเกินคุณพยาบานและคุณหมอ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-04 20:46:27 By : หน้าฮี
 


 

No. 24

Guest


อันนี้เรื่องจริงนะ ทุกคำทุกประโยคถ้าเป็นเท็จแม้แต่คำเดียว ผมก็ไม่แตกต่างและต่ำกว่า "ชายชาติหมา"

ครูวัยเกษียณท่านหนึ่ง : ไอ้หนูไปไหนมา (ท่านเรียกผมว่า ไอ้หนู คงเดาอายุของท่านได้ไม่ยาก)
ผม : ผมไปโรงพยาบาลมาครับคุณครู

ครูวัยเกษียณท่านหนึ่ง : เหนื่อยซิไปได้ทุกวัน ไอ้เดของฉันมันไม่เห็นเป็นอะไรเลย
(บ้านนี้เรียนเก่ง เดก็เป็นครู [พึ่งเออรี่ก่อนวัย แค่ 2 ปีเอง] บ้านนี้ส่วนใหญ่รับราชการ/ทำงานบริษัทเอกชนใหญ่ฯ ทุกฯคน)

ผม: งง เด ไหนครับคุณครู
ครูวัยเกษียณท่านหนึ่ง : ไอ้เดรัจฉาน น้องชายแท้ฯสายเลือดเดียวกันของฉันงัย
ผม: เออน่าครู เกิดมาเป็นพี่น้องกันถ้าไม่ช่วยเหลือกัน เกิดมาเป็นคนอื่นเสียยังดีกว่า
(ผมคิดในใจ วีระกรรมของเดที่ผมไม่รู้คงมากเหมือนทางแยก)
ครูวัยเกษียณท่านหนึ่ง : เดี่ยของฉันก็เคยบอกเอาไว้แแบบนี้แหละ ตอนนี้ถ้าฉันจะแย้งก็ไม่ทันแล้ว (ท่านไม่อยู่แล้ว[เตี่ยของคุณครู])

...
...
...
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-04 21:42:21 By : หน้าฮี
 


 

No. 25



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



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

ตอบความคิดเห็นที่ : 22 เขียนโดย : หน้าฮี เมื่อวันที่ 2016-03-04 20:20:37
รายละเอียดของการตอบ ::
ทุกวันนี้ ยัง3ขวบอยู่เระครับ
มิน่าละครับ งั้นทุกคนโปรดให้อภัยเขาเถอะครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-05 08:41:16 By : lamaka.tor
 


 

No. 26



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



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

ตอบความคิดเห็นที่ : 23 เขียนโดย : หน้าฮี เมื่อวันที่ 2016-03-04 20:46:27
รายละเอียดของการตอบ ::
เสียดายครับที่ผมทำหน้าที่แทนหมอได้

สองปีก่อนเพื่อนท้องร่วงไปหาหมอ หม..ให้ยาแก้ท้องเสียมากิน ผมดูแล้วมันไม่ใช่ท้องเสียเลยขอตรวจระบบน้ำเหลือง
ปรากฎว่าเป็น .... ไม่จำเป็นต้องเรียนเรื่องพวกนี้ทุกคนก็จับต้องได้ขอแค่มองความจริงแบบไม่มี อะคะติ ครับ
ผมไปโรงบ้าน เพียงแค่ขอดูผลตรวจ แล้วก็กลับ

หากเราเข้าใจร่างกาย ไม่รอให้สาย ค่อยตวจ ยาเรอะ ไม่ได้กินซักเม็ด 5555

วันหนึ่งผมไปหาเพื่อนที่ office เขียนแบบแห่งหนึ่งกำลังรับเด็ก Autocad มาคน(ไม่รู้เด็ก 3 ขวบจะรู้จัก Autocad รึป่าว)
เห็นเขาสอบเขียนแบบอยู่ ลากไปแล้วก็ลากมา 30 นาที แล้วยังไม่ไปไหนซ๊ากที ผมเลยบอกเขาไปว่า
ทำไมไม่พิมพ์ใน Command ละ ง่ายกว่ากันตั้งเยอะ(เสียดายความรู้ที่เรียนมา 4 - 5 - 6 -7 -8 ปีนะว่าไม๊)
แต่ซักพักเขาก็ทำเสร็จ แล้วหันกลับมาบอกผมว่า ผมลืมไปเลยครับ 5555

นิทานเรื่องนี้สอนให้รู้ว่า ของแบบนี้มันต้องเกาถึงจะหาย กินยามันไม่สาแก่ใจหร่อก 5555

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-05 09:00:41 By : lamaka.tor
 


 

No. 27



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



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

ตอบความคิดเห็นที่ : 12 เขียนโดย : หน้าฮี เมื่อวันที่ 2016-03-03 11:23:56
รายละเอียดของการตอบ ::
ยิ่งใช้ๆไปมันก็ยิ่งเห็นชัดเลยว่า EF นี่ Extension Method ตัวแม่เลยนะครับ
เสียดายที่ 3 ขวบคงอ่านหนังสือน้อยหน่อย

ก็ยังกลับมาถามอีกแหละ ทำไม ไม่ยัดมันลง ไปซะเลย

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-05 18:08:44 By : lamaka.tor
 


 

No. 28

Guest


ตามสะดวกครับ

Quote:
ยิ่งใช้ๆไปมันก็ยิ่งเห็นชัดเลยว่า EF นี่ Extension Method ตัวแม่เลยนะครับ
เสียดายที่ 3 ขวบคงอ่านหนังสือน้อยหน่อย

ก็ยังกลับมาถามอีกแหละ ทำไม ไม่ยัดมันลง ไปซะเลย


อันนี้คุณต้องไปถาม ทีมพัฒนา VS Version XXX ของ MS เอาเอง
แต่ผมเชื่อว่า "อย่างน้อยฯ ต้องมีคำอธิบายกลับมาว่า"

สมมุติว่าเรามีเท่ากัน 2,000 บาท

วิธีคิด/วิธีการ ของคุณ "คุณพยายามจะใช้ธนบัตรมูลค่าใบละ 1,000 บาท" เพื่อซื้อสิ่งที่คุณต้องการบางอย่าง
สมมุติคุณใช้ไป 2 ใบ = 2,000 บาท

และในทางกลับกัน

วิธีคิด/วิธีการ ของผม "ผมพยายามจะใช้ธนบัตรมูลค่าใบละ 20 บาท" เพื่อซื้อสิ่งที่ผมต้องการบางอย่าง
สมมุติผมใช้ไป 2 ใบ

คุณก็ลองเปรียบเทียบเอาเองว่า
1,000 X 2 = 2,000 บาท
20 X2 = 40 บาท

ปล. 1,000 X 2 == 20 X 100 มูลค่าในอนาคตมันจะเท่ากัน
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-05 19:03:51 By : หน้าฮี
 


 

No. 29



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



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

ตอบความคิดเห็นที่ : 28 เขียนโดย : หน้าฮี เมื่อวันที่ 2016-03-05 19:03:51
รายละเอียดของการตอบ ::
แสดงว่าของพี่นี่ได้ของที่ด้อยราคา ใช่ไม๊ครับ
ผมเข้าใจแล้วครับ

การเป็นกระจกนี่ก็ดี สามารถสะท้อนใจคนได้ ผมชอบเป็นกระจก

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-07 08:26:19 By : lamaka.tor
 


 

No. 30



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



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

ความเชื่อเป็นต้นเหตของการ งมงาย

แต่จงอย่าเชื่อผมเพราะมีคนกล่าวไว้ว่า


มา อนุสฺสวเนน - อย่าปลงใจเชื่อ ด้วยการฟังตามๆ กันมา
มา ปรมฺปราย - อย่าปลงใจเชื่อ ด้วยการถือสืบๆ กันมา
มา อิติกิราย - อย่าปลงใจเชื่อ ด้วยการเล่าลือ
มา ปิฏกสมฺปทาเนน - อย่าปลงใจเชื่อ ด้วยการอ้างตำราหรือคัมภีร์
มา ตกฺกเหตุ - อย่าปลงใจเชื่อ เพราะเดาว่าเป็นเหตุผลกัน
มา นยเหตุ - อย่าปลงใจเชื่อ เพราะการอนุมานคาดคะเน
มา อาการปริวิตกฺเกน - อย่าปลงใจเชื่อ ด้วยการเดาจากอาการที่เห็น
มา ทิฎฐินิชฺฌานกฺขนฺติยา - อย่าปลงใจเชื่อ เพราะเข้ากันได้กับทฤษฎีที่พินิจไว้แล้ว
มา ภพฺพรูปตา - อย่าปลงใจเชื่อ เพราะผู้พูดมีลักษณะน่าเชื่อถือ
มา สมโณ โน ครูติ - อย่าปลงใจเชื่อ เพราะนับถือว่า ท่านสมณะนี้ เป็นครูของเรา


ท่านผู้รู้นี้ถือได้ว่าเป็นนักปรัชญาที่ได้รับการยอมรับจากต่างชาติหลายประเทศ(ไทยเราก็ถือว่าเป็นต่างชาติเช่นกันนะ)
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-03-07 08:57:45 By : lamaka.tor
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : C# SQL สอบสอบถามท่านผู้รู้และใช้งานบ่อยๆเกี่ยวกับการเรียกใช้ 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: Voake, Comcube, รับทำเว็บไซต์ รับเขียนโปรแกรม

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