ถ้าต้องการค่าของ เลขรหัส ที่ได้จากการ select จากตารางหนึ่ง เอาค่าที่ได้นี้มาใช้ในคำสั่ง insert ทำไงหรอคะ
Code (VB.NET)
dim cmdsql as string ="insert into table_name(field_name) values("+ ชื่อตัวแปรหรืออุปกรณ์ที่รับค่ามา +")"
ถ้าเป็น string ใส่ ' น่ะครับ ไม่รู้ตรงหรือป่าวอ่านแล้วงงๆ
Date :
2010-10-21 09:58:32
By :
kanchen
Code (VB.NET)
Dim choose As String = "SELECT FoodID FROM FoodList_Table WHERE [Name] = '" & cboFoodName.Text & "'"
Dim addData As String = "INSERT INTO DietRecord_Table ([DateTime], FoodID, Amount, Rate) VALUES ('" & DateTime.Now & "','" & xxxxx & "','" & nudAmount.Value & "','" & cboRate.SelectedIndex + 1 & "')"
'คือ ในตาราง DietRecord_Table เก็บเป็น FoodID แต่ตอนที่เราจะเอาชื่อที่ได้จาก cboFoodName.Text มาใส่ในตารางเลย มันก็ไม่รู้จักใช่มั้ยคะ เพราะว่ามันเก็บเป็น FoodID ไม่ใช่ Name อ่าค่ะ
คือว่า เรามีตาราง FoodList_Table ซึ่งเก็บ FoodID กับ Name อยู่ค่ะ และ FoodID ก็เป็น FK ค่ะ
Date :
2010-10-21 10:18:06
By :
looknut
อ่อ ลืมบอกไปค่ะ
ตรง xxxxx เนี่ย อยากให้เป็นค่าผลลัพธ์ที่ได้จาก choose อ่าค่ะ คือ เอาเฉพาะ FoodID ที่ได้มาใช้ค่ะ
Date :
2010-10-21 10:20:13
By :
looknut
เอา ' ของ xxxx ออกครับ ทั้งหน้าและหลังของ xxxx
Date :
2010-10-21 10:27:58
By :
kanchen
ถ้าเอา ออก แล้ว ใส่แค่ choose แล้วมันจะออกมาเป็นประโยคแบบนี้ SELECT FoodID FROM FoodList_Table WHERE [Name] = 'Apple juice'
อ่าค่ะ
Date :
2010-10-21 10:31:18
By :
looknut
ผลที่ได้มันจะ error เป็นประมาณนี้ค่ะ
Code (VB.NET)
"INSERT INTO DietRecord_Table ([DateTime], FoodID, Amount, Rate) VALUES ('21/10/2553 10:39:32',SELECT FoodID FROM FoodList_Table WHERE [Name] = 'Orange','2','3')"
Date :
2010-10-21 10:33:37
By :
looknut
มันก็ต้อง error อยู่แล้วครับ เพราะยังไม่ได้ทำการ ดึงข้อมูลของ choose ออกมานิครับ คุณต้องเรียก choose ออกมาก่อนครับ
Code (VB.NET)
Dim strsql as string = "select f_name from t_name where f_id=' "+ f +" ' "
Dim sqlCmd as command(strsql, con)
Dim rd as datareader
rd = sqlcmd.executereader ----> ผมไม่แน่ใจว่าเป็น executereader ตัวนี้หรือ แตจำได้ว่าด้านหลังมี reader ครับ ไม่แนใจ้ว่าเป็น executedatereader
while rd.read
dim id as interger = rd("f_name") ' ตรงนี้จะเป็นการ select ข้อมูลของ id ที่จะนำมาใช้ในการ insert ครับ
end while
ต้องเขียนใน loop while นะครับ แล้วก็ที่เหลือน่าจะทำต่อได่นะครับ
Date :
2010-10-21 10:50:18
By :
kanchen
ขอบคุณมากค่ะ เดี๋ยวจะลองพยายามทำดูค่ะ
Date :
2010-10-21 10:53:25
By :
looknut
ได้แล้วค่ะๆๆๆๆ ขอบคุณมั่กๆๆๆๆนะคะ ^_____^
Date :
2010-10-21 11:42:05
By :
looknut
Load balance : Server 04