|
|
|
วิธีบันทึกค่าที่เป็น identity ไปยังตารางที่เชื่อมกันได้ยังไงครับ? ช่วยที่ครับ |
|
|
|
|
|
|
|
**เพิ่งโพสครั้งแรกถ้าผิดพลาดอะไร ชี้แนะได้ครับและขอโทษด้วยครับ ขอบคุณครับ**
คือผมต้องการบันทึกค่าคอลัมน์ContanerID ให้เข้าทั้ง3ตารางครับ โดยตารางหลักนั้นจะอยู่ที่ตารางContainer
โดยคอลัมน์ ContainerID ของตารางนี้ผมตั้งเป็น identity ครับ
จึงอยากทราบวิธีทำให้คอลัมน์ContainerID อีก2ตารางบันทึกค่าเดียวกันเมื่อผมกดปุ่มบันทึกครับ
โค้ดคับ (มือใหม่มากครับ)
Code (VB.NET)
dataSt = New DataSet
adapter = New SqlDataAdapter("INSERT INTO Container(ContainerNo, Type, Size, Height, Agent, DateIn, Time)VALUES('" & txtContainerNo.Text.Trim() & "'," & _
"'" & cboType.SelectedItem & "'," & _
"'" & cboSize.SelectedItem & "'," & _
"'" & cboHeight.SelectedItem & "'," & _
"'" & cboAgent.Text & "'," & _
"'" & GetDateTime(dtpIN) & "'," & _
"'" & t & "')", connection)
adapter.Fill(dataSt, "Container")
adapter = New SqlDataAdapter("INSERT INTO Driver(DriverName, TruckLicense)VALUES('" & txtDriver.Text.Trim() & "','" & txtTruckLicense.Text.Trim() & "')", connection)
adapter.Fill(dataSt, "Driver")
adapter = New SqlDataAdapter("INSERT INTO Payment(DateStart, DateStop, NumDay, Agent, LoadPrice, UnloadPrice)VALUES('" & GetDateTime(dtpStart) & "','" & GetDateTime(dtpStop) & "','" & Numday + 1 & "','" & cboAgent.Text & "','" & LP & "','" & ULP & "')", connection)
adapter.Fill(dataSt, "Payment")
Tag : .NET, Ms SQL Server 2008, VB.NET, VS 2010 (.NET 4.x)
|
|
|
|
|
|
Date :
2015-01-22 20:08:39 |
By :
kannikorn |
View :
751 |
Reply :
8 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่ยากครับ ก็ Insert 1เพิ่มเข้าไปอีก 2 Table ครับ เก็บค่าแล้ว Insert เข้าไปตรงๆ เลยครับ
|
|
|
|
|
Date :
2015-01-23 08:53:04 |
By :
thaidevelopment.net |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมใช้วิธี ประกาศตัวแปร หรือไม่ ก็ เอา textbox มารองรับ ContainerID ที่ใช้งานอยู่ครับ
ความจริง หลังจากที่คุณ
adapter.Fill(dataSt, "Container")
มันจะได้ ContainerID มาอยู่แล้วครับ
เอามันมาใช้กับ อีก2ตาราง ได้เลยครับ
|
|
|
|
|
Date :
2015-01-23 09:13:12 |
By :
lamaka.tor |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// โทษทีครับ ตอนแรกผมลืมดูว่าเป็นการสร้าง ID แบบอัตโนมัติ มี2 วิธีให้เลือกครับ
1. SELECT MAX(ContainerID) FROM Container มาก่อนแล้วค่อยเอา ID มาใช้งาน
2. INSERT SELECT ครับ คือ ดึง ID ขึ้นมาพร้อมกับ INSERT ข้อมูลลงฐานข้อมูลคัรบ
INSERT INTO Driver(ContainerID,DriverName, TruckLicense)
VALUES((select MAX(ContainerID) from Container),'','')
INSERT INTO Payment(ContainerID,DateStart, DateStop, NumDay, Agent, LoadPrice, UnloadPrice)
VALUES((select MAX(ContainerID) from Container),'','','','','','')
|
|
|
|
|
Date :
2015-01-23 13:20:32 |
By :
thaidevelopment.net |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (SQL)
INSERT
INTO Container OUTPUT Inserted.ContainerID
VALUES(อะไรก็ว่ากันไป)
|
|
|
|
|
Date :
2015-01-23 15:04:47 |
By :
หน้าฮี |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 03
|