เอาชื่อตารางและชื่อคอลัมทั้งหมด คืออยากทราบว่าถ้าผมต้องการชื่อตารางและคอลัมทั้งหมดในตารางนั้น ๆ
ขอบคุณพี่msorawich และพี่tungman ทั้ง 2 มากครับ เร็วทันใจสุดยอดเลยครับ
ว่าแต่พี่ tungman ครับ ไอ้ตรง information_schema ใช้แทนอะไรลงไปหรอครับ ?
Date :
2010-03-10 17:13:40
By :
Nameless
ไม่ต้องแทนใช้แบบนั้นแหละ
แทนเฉพาะ 'Your_Table' ให้เปลี่ยนเป็นชื่อ Table ที่ต้องการพอ
Date :
2010-03-10 17:19:45
By :
tungman
ครับผม ขอบคุณครับ
แล้วถ้าหากว่าผมต้องการใช้ตัวแปรตัวนึงในการเก็บชื่อ ตาราง แล้วตัวแปรอีกตัวในการเก็บชื่อ คอลัม แล้วให้มันทำการวน loop ทำการ Insert หรือ update DB อีกตัวหนึ่ง ที่มี ชื่อตารางและคอลัมเหมือนกันทุกอย่างเลยจะทำได้หรือไมครับ
Date :
2010-03-10 21:21:51
By :
Nameless
ที่ว่าชื่อตารางซ้ำกันนี้ ซ้ำกันแบบไหนอะครับ
คือว่าที่ผมจะทำมันจะเป็นลักษณะนี้อะครับ
DB(1) กับ DB(2) เป็นฐานข้อมูลคนละตัวกันครับ
DB(1) ชื่อ ABC
DB(2) ชื่อ DEF
คือว่า DB(1) ABC จะมีคนใช้งาน เวลาที่เค้า Insert เพิ่มเข้าไป หรือ Update แก้ไขอะไร ก็จะทำที่ DB(1)
แล้วผมใช้ Timer ตั้งเวลาไว้อะครับ ว่าพอถึงเวลาที่กำหนด ก็จะให้มันทำการ Insert ข้อมูลหรือ Update ข้อมูลตาม DB(1) อะครับ มาที่ DB(2) อะครับ
ตอนแรกที่ผมคิดไว้ ก็คือจะ Select ชื่อตาราง และ คอลัมทั้งหมด จาก DB(1) มาแล้วก็เขียน VB.NET ให้มันทำการวน loop Update หรือ Insert ข้อมูลมาที่ DB(2) ตาม DB(1) อะครับ --> [แต่ก็ยังเขียนไม่ออกอะครับ งงๆ อยู่ ไม่รู้ว่าวิธีนี้จะได้หรือเปล่า]
ไม่ทราบว่าพอจะมีวิธีไหนบ้างไหมครับ
* ผมใช้ SQL Server 2000 ครับ รบกวนด้วยครับ
Date :
2010-03-11 08:57:43
By :
Nameless
ไม่ทราบ จะเข้าใจผิดหรือเปล่านะคะ เคย strong recomment ว่าการสร้างตารางหลายๆตารางตอน runtime
ถ้าเลี่ยงได้ให้พยายามเลี่ยง ปัญหาจะมีเยอะค่ะเช่น ถ้าคุณจะเอารายงานจากก้อนๆข้อมูลนี้
คุณจะต้อง join ตารางกี่ตารางกันหรอคะ ทั้งๆที่ข้อมูลก็ชุดเดียวกัน หรือคุณจะเชื่อมกับข้อมูลส่วนอื่น
เหมือนจะออกแบบฐานข้อมูลไม่ค่อยจะถูกนะคะ ขอวิจารณ์ตรงๆสักที
แต่ก็เป็นงานของคุณค่ะแล้วแต่แล้วกัน
Date :
2010-03-11 13:00:25
By :
blurEye
คือที่จะทำมันจะลักษณะนี้อะครับ เพื่อที่จะได้เข้าใจในสิ่งที่ผมจะทำมากขึ้น
คือว่าทาง วงสีเขียวจะเป็นเครื่องที่ User ใช้งานอะครับ จะใช้งานผ่าน win app แล้วโปรแกรมใน win app ก็จะตั้ง Timer ให้ทำการส่งข้อมูลตามเวลาที่ กำหนด โดยเมื่อถึงเวลาก็จะให้ win app ทำการส่งข้อมูลจาก DB(1) ไปที่ web service แล้วพอ web service ได้รับข้อมูลแล้วก็จะให้ทำการ insert หรือ update ลงไปใน DB(2) พอจัดการเสร็จแล้วก็จะให้ทำการส่งค่าอะไรซักอย่างกลับมาเพื่อบอกว่าเสร็จสิน
โดยที่ DB(1) กลับ DB(2) มีโครงสร้างเหมือนกันทุกอย่างเลยครับ
* นี้คือลักษณะที่จะทำอะครับ ตอนนี้กำลังจำลองในเครื่อง โดยใช้ IIS server ในส่วนของ web service แล้วใช้ ฐานข้อมูลเป็น SQL server 2000 ใช้ VS2005 ในการพัฒนาอะครับ ภาษาที่ใช้ก็ vb.net ตอนนี้ทำในส่วนของ win app ใกล้จะเสร็จแล้ว ติดต่อกลับ web service ได้แล้ว web service ติดต่อกับ ฐานข้อมูลได้แล้ว แต่ว่าเวลาที่จะให้มันทำการ Insert หรือ Update จาก DB(1) ไป DB(2) นี้อะครับ ที่ยังไม่รู้ว่าจะทำอย่างไร
** ไม่ทราบวิธีที่ผมคิดนี้สามารถทำได้หรือเปล่าครับ ถ้าทำได้ในส่วนของการส่วข้อมูลจาก DB(1) ไป DB(2) จะต้องทำอย่างไรครับ หรือว่าถ้ามีวิธีอื่นที่ดีกว่า ง่ายกว่า ยังไงก็ขอคำแนะนำด้วยครับ
Date :
2010-03-12 09:00:57
By :
Nameless
แล้วตกลงคุณจะเอาชืื่อตารางชื่อคอลัมภ์ไปทำไมกันคะ ในเมื่อเป็น app ที่แยกกันอยู่แล้ว
ในเครื่อง client ก็ใช้ตารางเดิมเดียวกันทั้งหมด
ยิ่งอ่านยิ่งรุสึกว่าทำเรื่องง่ายให้เป็นเรื่องยากค่ะ
ทั้งที่จริงไม่ต้องใช้ webservice
จะใช้ socket หรือจะใช้ shell script ก็ยังได้
ค่อยๆคิดดูให้ถี่ถ้วนมังคะ
Date :
2010-03-13 15:48:55
By :
blurEye
Load balance : Server 05