cara menyimpan record yang diinput di datagrid ke database sql

konsep sistem saya adalah ini. saya sudah selesai menampilkan kolom dari tabel berbeda menggunakan gabungan dalam.

Saya merasa kesulitan karena, menurut saya Anda hanya dapat menggunakan perintah insert di sql ke satu tabel dalam satu waktu.

tetapi datagrid saya menampilkan kolom berbeda yang dipanggil dari tabel berbeda.

bagaimana struktur sintaks sql saya? dan juga memanggil prosedur tersimpan di vb.net 2003

terima kasih ada ide siapa pun

INI ADALAH PROC TERSIMPAN SQL SAYA

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

INI ADALAH KODE VB SAYA

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")

itu mengembalikan kesalahan yang menunjuk ke

 sAdapter.Fill(DataSet)

INILAH KODE KEDUA SAYA DI BAWAH INI TANPA PROSEDUR TERSIMPAN YANG DIPERLUKAN

    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

tapi masih tidak berfungsi


person ivandinglasan    schedule 19.03.2013    source sumber
comment
@joshua [kode] MASUKKAN NILAI Orang (4,'Nilsen', 'Johan', 'Bakken 2', 'Stavanger') [/code]   -  person ivandinglasan    schedule 19.03.2013
comment
tolong tambahkan ini di pertanyaan Anda, dan Anda hanya memasukkan satu Tabel saja?   -  person joshua    schedule 19.03.2013
comment
itu adalah contoh kode untuk memasukkan catatan ke tabel.. tetapi yang saya tahu adalah Anda hanya dapat memasukkan catatan di satu tabel pada satu waktu.. tetapi yang saya perlukan adalah memasukkan ke dalam tabel yang berbeda secara bersamaan. karena saya memanggil kolom di tabel berbeda secara bersamaan untuk menampilkannya di datagrid   -  person ivandinglasan    schedule 19.03.2013
comment
lalu anda tinggal menambahkan beberapa kode INSERT lalu mengeksekusinya sekaligus.   -  person Kasnady    schedule 19.03.2013
comment
@ArwinZhang Pak jika semudah itu saya tidak akan bertanya sama sekali tapi terima kasih atas saran Anda   -  person ivandinglasan    schedule 19.03.2013
comment
@ivandinglasan, Semudah yang saya katakan. Saya sudah mencobanya sendiri sebelumnya, kodenya pasti akan panjang tergantung apa yang Anda inginkan. Mencoba dulu dan mengatakan apa kesalahannya lagi.   -  person Kasnady    schedule 19.03.2013
comment
@ArwinZhang Pak, ini kode saya, mohon bantu saya merevisinya agar berfungsi   -  person ivandinglasan    schedule 20.03.2013


Jawaban (1)


Kode Anda sangat panjang, dan yang saya maksud adalah ..

 Try
                    con = New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\notifdb.accdb")
                    Dim command As String
                    command = "INSERT INTO NFTB (NOTIF, EMP_NO, EMP_NAME, [POSITION]) VALUES (@NOTIF, @EMP_NO, @EMP_NAME, @POSITION)"
                    con.Open()
                    Dim cmd As OleDbCommand
                    cmd = New OleDbCommand(command, con)
                    cmd.Parameters.AddWithValue("@NOTIF", NOTIFTextBox.Text)
                    cmd.Parameters.AddWithValue("@EMP_NO", EMP_NOTextBox.Text)
                    cmd.Parameters.AddWithValue("@EMP_NAME", EMP_NAMETextBox.Text)
                    cmd.Parameters.AddWithValue("@POSITION", POSITIONTextBox.Text)
                    cmd.ExecuteNonQuery()
                Catch exceptionObject As Exception
                    MessageBox.Show(exceptionObject.Message)
                Finally
                    con.Close()
                End Try

saya baru saja mengatakan tentang memasukkan kode, selain itu Anda harus melakukannya sendiri. Dan SQL tidak pernah memiliki nilai DEFAULT, Anda harus mengubah nilai nama kolom Anda menjadi sesuatu, lalu menambahkan parameter ke dalamnya kotak teks atau bidang apa di formulir Anda yang akan dimasukkan ke database Anda..

person Kasnady    schedule 20.03.2013
comment
Saya tahu bahwa saya harus melakukannya sendiri, saya hanya menanyakan ide bagaimana cara merevisinya. maksudku bagaimana struktur kodenya. Saya akan mencoba kode Anda, Pak, terima kasih saya akan menandainya sebagai benar jika berhasil - person ivandinglasan; 20.03.2013
comment
saya mengganti cmd = ...... dengan sintaks sql saya tapi. kesalahannya adalah digarisbawahi oleh garis biru yang mengatakan tipe nilai 'string' tidak dapat dikonversi ke... - person ivandinglasan; 20.03.2013
comment
dengan atau tanpa digaris bawahi garis biru.. cmd = 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_Tahun Inklusif Garansi, OE_Status Garansi, OE_Status , OE_Dept_Code, OE_Location_Code, OE_Remarks) NILAI (DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT) - person ivandinglasan; 20.03.2013
comment
mengapa nilai Anda mendapat DEFAULT? Juga nilai dan kolomnya, tinggal tulis kolom apa yang ingin disisipkan, tidak perlu semua... - person Kasnady; 20.03.2013
comment
Saya tidak melihat ada yang salah saat memasukkan ke dalam nama tabel saya sendiri (nama kolom,... dll... saya pikir masalah saya adalah default ya, benar.. tetapi jika tidak default, bagaimana saya bisa menyimpan data yang dimasukkan di datagrid saya dan simpan ke server sql saya? - person ivandinglasan; 20.03.2013
comment
Lihat jawabannya. Saya memiliki perubahan untuk menyimpan kode, Anda hanya perlu mengulangi Sisipkan dan parameter vavlue - person Kasnady; 20.03.2013
comment
saya mulai mengerti maksud Anda, Pak. yang terakhir, ini bukan bidang kotak teks. itu jaringan data? dengan asumsi POSITION ini ada di kolom 1 baris 1 kode apa yang akan saya masukkan untuk POSITIONTextBox.Text [code] cmd.Parameters.AddWithValue(@POSITION, POSITIONTextBox.Text)[/code] - person ivandinglasan; 20.03.2013
comment
coba cek disini stackoverflow.com/questions/9784301/ - person Kasnady; 20.03.2013