开发者

ASP: How to insert contents of array to database?

开发者 https://www.devze.com 2023-03-21 16:56 出处:网络
NOTE:, I don\'t need help with the generic concept of inserting data to a database, just sorting through the contents of an array depending on the content of the \"line\" and how to determine which \"

NOTE:, I don't need help with the generic concept of inserting data to a database, just sorting through the contents of an array depending on the content of the "line" and how to determine which "items" in the array correspond to a field in the database


I have a glob of data posted to me by a desktop application that I need to sort through. My old solution worked, but was far less than elegant (INSERT each line of glob into database, then query for, reINSERT, and delete old).

How can I get the following chunk of information (POSTED to me as "f_data") into an array and insert the data into a database?

f_data Contents:

Open~notepad.exe~7/14/2011 2:28:46 PM~COMPUTER01
Open~mspaint.exe~7/14/2011开发者_Python百科 2:28:55 PM~COMPUTER01
Close~notepad.exe~7/14/2011 2:30:06 PM~COMPUTER01
Close~mspaint.exe~7/14/2011 2:30:06 PM~COMPUTER01
Session~7/14/2011~336~COMPUTER01
Startup~7/18/2011 11:23:12 AM~COMPUTER01

Please keep in mind that I have never used arrays before. 15 years of ASP and I've never had to use an array. How I've been so lucky I don't know, but I think that it may be required for this solution. Here is my current code to put "f_data" into an array:

Example of what I want to do:

var_logdata = request.form("f_data")
arr_logdata = Split(var_logdata,"~")
for var_arrayitem = 0 to ubound(arr_logdata)
'Do some stuff here depending on the log type
  'If type is "Open"
      'insert to tb_applicationlog
  'Elseif type is "Close"
      'insert to tb_applicationlog
  'Elseif type is "Session" 
      'insert to tb_sessions
  'End if
next

What I don't know how to do is to determine what "type" of log entry the item in the array is. If you look at the code above, I need to insert to different tables in the database depending on the "type" of log entry. For example, an "Open" or "Close" entry goes into the tb_applicationlog table. Once I determine what type the log entry is, how do I align the items in the array "row" to fields in the database?

Thanks very much in advance, Beems


I think it would be better to split 'logdata' using another character first, then spilt the fields in the array created by 'logdata' using '~', as below (code not tested) -

var_logdata = request.form("f_data")
arr_logdata = Split(var_logdata,vbCrLf) 
'split request.form("f_data") using newline so we have an array containing each line 
for var_arrayitem = 0 to ubound(arr_logdata)
    'now we can split each line by "~"
    arr_linelogdata = Split(arr_logdata(var_arrayitem),"~")
    'now arr_linelogdata(0) is log type, arr_linelogdata(1) is next field etc
    'linetype = arr_linelogdata(0) etc
    'use variables derived from array to do what you need to
next
0

精彩评论

暂无评论...
验证码 换一张
取 消