แนวคิดระบบของฉันคือสิ่งนี้ ฉันแสดงคอลัมน์จากตารางต่างๆ เสร็จแล้วโดยใช้การรวมภายใน
ฉันเจอช่วงเวลาที่ยากลำบากเพราะฉันคิดว่าคุณสามารถใช้คำสั่ง insert ใน sql ทีละตารางได้เท่านั้น
แต่ DataGrid ของฉันแสดงคอลัมน์ต่าง ๆ ที่ถูกเรียกจากตารางอื่น
โครงสร้างของไวยากรณ์ sql ของฉันจะเป็นอย่างไร? และยังเรียก Stored Procedure บน vb.net 2003 อีกด้วย
ขอบคุณความคิดใด ๆ ทุกคน
นี่คือ PROC ที่จัดเก็บ SQL ของฉัน
CREATE PROCEDURE AddToOfficeEquipmentProfile AS
INSERT INTO dbo.tblOfficeEquipmentProfile(OE_ID
, Report_ID
, OE_Category
, OE_SubCategory
, OE_Name
, OE_User
, OE_Brand
, OE_Model
, OE_Specs
, OE_SerialNo
, OE_PropertyNo
, OE_Static_IP
, OE_Vendor
, OE_PurchaseDate
, OE_WarrantyInclusiveYear
, OE_WarrantyStatus
, OE_Status
, OE_Dept_Code
, OE_Location_Code
, OE_Remarks)
VALUES
(DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT)
GO
นี่คือรหัส VB ของฉัน
Dim sqlconn As New SqlClient.SqlConnection
sqlconn.ConnectionString = "server = SKPI-APPS1;" & _
"Database = EOEMS;integrated security=true"
Dim Command As SqlCommand = New SqlCommand
Command.Connection = sqlconn
Command.CommandText = "AddToOfficeEquipmentProfile"
Command.CommandType = CommandType.StoredProcedure
Dim sAdapter As SqlDataAdapter = New SqlDataAdapter(Command)
Dim DataSet As DataSet = New DataSet(Command.CommandText)
sAdapter.Fill(DataSet)
DataGrid1.DataSource = DataSet.Tables(0)
MsgBox(MsgBoxStyle.OKOnly, "YOU HAVE SUCCESSFULLY ADDED RECORDS TO THE TABLE")
มันส่งคืนข้อผิดพลาดที่ชี้ไปที่
sAdapter.Fill(DataSet)
นี่คือรหัสที่สองของฉันด้านล่างโดยไม่ต้องมีขั้นตอนการจัดเก็บ
Dim adapter As New SqlDataAdapter
Dim sql As String
sql = "INSERT INTO tblOfficeEquipmentProfile(OE_ID, Report_ID, OE_Category, OE_SubCategory, OE_Name, OE_User, OE_Brand, OE_Model, OE_Specs, OE_SerialNo, OE_PropertyNo, OE_Static_IP, OE_Vendor, OE_PurchaseDate, OE_WarrantyInclusiveYear, OE_WarrantyStatus, OE_Status, OE_Dept_Code, OE_Location_Code, OE_Remarks)VALUES(DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT)"
Try
sqlconn.Open()
adapter.InsertCommand = New SqlCommand(sql, sqlconn)
adapter.InsertCommand.ExecuteNonQuery()
MsgBox("Row inserted !! ")
Catch ex As Exception
MsgBox(ex.ToString)
End Try
แต่ก็ยังไม่ทำงาน