PDA

View Full Version : ثبت شدن در دیتا بیس



ساران سافت
سه شنبه 20 آذر 1386, 10:58 صبح
من sqlserver express 2005 رو نصب کردم و با این کد می خواهم اطلاعاتم رو از تویفایل بخونم و توی رکورد هام ذخیره کنم همه چیز درسته ولی نمی دونم چرا اطلاعات ذخیره نمیشه؟؟!!

Dim CDRtable As DataTable = Nothing
Dim strconnection As String = "Data Source=NOTEBOOK\SQLEXPRESS;Initial Catalog=CDR;Integrated Security=True"
Dim objconnection As New System.Data.SqlClient.SqlConnection(strconnection)
Dim strsql As String = "select ID,CallID,CalledNo,CallStart,CallEnd,CallDuration, RemoteIP,CallType from CDR"
Dim objcommand As New System.Data.SqlClient.SqlCommand(strsql, objconnection)
objconnection.Open()
Dim adapter As SqlClient.SqlDataAdapter = New SqlClient.SqlDataAdapter(objcommand)
CDRtable = New DataTable()
adapter.Fill(CDRtable)

Dim Fields() As String

Dim sr As IO.StreamReader = IO.File.OpenText("d:\vb.net\cdr server\cdr.cdr")
Dim sLine As String
Do
sLine = sr.ReadLine()
Fields = sLine.Split(",")
Dim row As DataRow
row = CDRtable.NewRow()
row("CallID") = Fields(0)
row("CalledNo") = Fields(1)
row("CallDuration") = Fields(2)
row("CallStart") = Fields(4)
row("CallEnd") = Fields(5)
row("RemoteIP") = Fields(8)
row("CallType") = Fields(10)
CDRtable.Rows.Add(row)


Loop Until sLine = Nothing
sr.Close()

مهدی نان شکری
سه شنبه 20 آذر 1386, 12:01 عصر
با سلام
حلقه برنامه رو به شکل زیر تغییر. ببینید مشکلتون حل میشه؟


While sr.EndOfStream = False
sLine = sr.ReadLine()
Fields = sLine.Split(",")
Dim row As DataRow
row = CDRtable.NewRow()
row("FormID") = Fields(0)
row("Name_vc") = Fields(1)
CDRtable.Rows.Add(row)
End While

ساران سافت
سه شنبه 20 آذر 1386, 12:42 عصر
نه جواب نداد
هیچی ذخیره نمی شه

__H2__
چهارشنبه 21 آذر 1386, 09:57 صبح
سلام
برای چی باید ذخیره کنه؟؟؟؟
من کدتان را خط به خط نخواندم ولی چیزی که به شدت مشخص است،
فقدان دستور (adapter.Update(CDRtable برای ذخیره داده ها در پایان عملیات است.

البیته adapter شما هم ناقص است ونمیتواند دستور فوق را اجرا کند.
اگر دستوراتتان صحیح باشد شاید این کد در انتها بتواند مشکلتان را حل کند


Dim builder As New System.Data.SqlClient.SqlCommandBuilder(adapter)
adapter.UpdateCommand = builder.GetUpdateCommand
adapter.DeleteCommand = builder.GetDeleteCommand
adapter.InsertCommand = builder.GetInsertCommand

adapter.Update(CDRtable)