PDA

View Full Version : ارتباط با بانک اطلاعاتی اکسس



hamhik
یک شنبه 15 مرداد 1385, 10:55 صبح
با سلام و خسته نباشید.
مشکلی که من داشتم مربوط می شه به قسمت asp.net web siteدر واقع من برنامه مو اول تو محیط vb.net نوشتم حالا که می خوام کداشوببرم تو قسمت asp.net اجرا می شه ولی روی یه سری دستورات خطا می ده.حالا به نظر شمامشکل این کد در کجاست این کد را من در 2005vb.net نوشتم و بعد در محیط asp.net web site کپیش کردم.


Imports System.Data
Imports System.Data.OleDb

Public Class Form1
Inherits System.Windows.Forms.Form
Dim ds As New DataSet
Dim strsql As String
Dim strcon As String
Dim da As OleDbDataAdapter
Dim con As OleDbConnection
Dim newrow As DataRow
Dim cb As OleDbCommandBuilder
Private Sub empty()
TextBox1.Text = 0
TextBox2.Text = ""
TextBox3.Text = 0
End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
strcon = "provider=microsoft.jet.oledb.4.0;" & "data source=d:\a\tct121.mdb"
strsql = "select * from ta121"
con = New OleDbConnection(strcon)
con.Open()
da = New OleDbDataAdapter(strsql, con)
da.Fill(ds, "ta121")
con.Close()
End Sub

کدهای مربوط به درج یک سطر خالی در بانک اطلاعاتی
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
newrow = ds.Tables("ta121").NewRow
MsgBox("enter new record and press save")
Call empty()
End Sub
کدهای مربوط به دادن مقدار به فیلدهای سطر خالی
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
newrow("snoid") = Val(TextBox1.Text)
newrow("snameuser") = TextBox2.Text
newrow("snopass") = Val(TextBox3.Text)
ds.Tables("ta121").Rows.Add(newrow)
cb = New OleDbCommandBuilder(da)
da = cb.DataAdapter
da.Update(ds, "ta121")
con.Close()

End Sub

pouriams
یک شنبه 15 مرداد 1385, 11:16 صبح
منظورت چیه؟ vb.net زبان برنامه نویسی اش است. یعنی چی که می‌گی vb.net نوشتم می‌خوام ببرم تو asp.net. تو محیط asp.net داری کدنویسی می‌کنی با زبان vb.net.
ارتباط ات با بانک access هم اینطوری است که اگر می‌خواهی با ado.net کار کنی باید از oledb استفاده کنی.
اگه خواستی بگو کدش را برات بزارم.

کانکشن هایت را Dim con As new OleDbConnection اینجوری بنویس و کاندهایت را نیز as new بزن.

hamhik
یک شنبه 15 مرداد 1385, 11:37 صبح
ببین توی قسمت aspnet web site که می ری یه فرم داره خب که تو قسمت فرمش دو تا دکمه هست یکی با نام design و دیگری با نام sourceکه همان طور که می دونید قسمتsource مربوط می شه به زبان aspخب حالا یه قسمت دیگه داره که می تونی با vb برنامه نویسی کنی اونم موقعی که در قسمتdesign روی صفحه ی وبت دابل کلیک کنی. حالا من اومدم این کدا رو از محیط vb.net به این قسمت کپی کردم اما مشکل اینجاست که به این خط ها خطا می گیره
newrow("snoid") = Val(TextBox1.Text)
newrow("snameuser") = TextBox2.Text
newrow("snopass") = Val(TextBox3.Text)

pouriams
یک شنبه 15 مرداد 1385, 11:44 صبح
این را تست کن:
Dim workRow As DataRow
workTable.Rows.Add(workRow)

pouriams
یک شنبه 15 مرداد 1385, 12:13 عصر
راستشو بخواهی من با vb.net کار نکردم با #c کار کردم. در ضمن تو #C هم به همچین موضوعی برخورد نکردم. حالا می‌رم راجع بهش تحقیقات می‌کنم.
اما به نظرم می‌آد که شما داری یک مقدار value را به یک مقدار text نسبت می‌دهی.