2010-04-07 4 views
1

J'ai ce code pour télécharger un fichier Excel et enregistrer les données dans la base de données. Je ne peux pas écrire le code pour l'entrée de la base de données. quelqu'un s'il vous plaît aidercode ASP pour télécharger des données

<% 
if (Request("FileName") <> "") Then 
Dim objUpload, lngLoop 
Response.Write(server.MapPath(".")) 
If Request.TotalBytes > 0 Then 
Set objUpload = New vbsUpload 

    For lngLoop = 0 to objUpload.Files.Count - 1 
    'If accessing this page annonymously, 
    'the internet guest account must have 
    'write permission to the path below. 
    objUpload.Files.Item(lngLoop).Save "D:\PrismUpdated\prism_latest\Prism\uploadxl\" 

Response.Write "File Uploaded" 
Next 

Dim FSYSObj, folderObj, process_folder 
process_folder = server.MapPath(".") & "\uploadxl" 
set FSYSObj = server.CreateObject("Scripting.FileSystemObject") 
set folderObj = FSYSObj.GetFolder(process_folder) 

set filCollection = folderObj.Files 

Dim SQLStr 
SQLStr = "INSERT ALL INTO TABLENAME " 
for each file in filCollection 
    file_name = file.name 
    path = folderObj & "\" & file_name 
    Set objExcel_chk = CreateObject("Excel.Application") 
    Set ws1 = objExcel_chk.Workbooks.Open(path).Sheets(1) 
    row_cnt = 1 


     'for row_cnt = 6 to 7 
     ' if ws1.Cells(row_cnt,col_cnt).Value <> "" then 
     ' col = col_cnt 
     ' end if 
     'next 
     While (ws1.Cells(row_cnt, 1).Value <> "") 
     for col_cnt = 1 to 10  

     SQLStr = SQLStr & "VALUES('" & ws1.Cells(row_cnt, 1).Value & "')" 
     next 
     row_cnt = row_cnt + 1 
     WEnd 


    'objExcel_chk.Quit 
    objExcel_chk.Workbooks.Close() 
    set ws1 = nothing 
    objExcel_chk.Quit 

    Response.Write(SQLStr) 

     'set filobj = FSYSObj.GetFile (sub_fol_path & "\" & file_name) 
     'filobj.Delete 

    next 
End if 
End If 

plz me dire comment sauvegarder les données Excel suivantes à l'oracle databse.any aide serait appréciée

Répondre

0

L'idée de base de ce que vous voulez faire est:

Récupérez les données de votre feuille de calcul ligne par ligne et, pour chaque ligne, exécutez une instruction insert dans la base de données. Vous pouvez probablement vous en tirer sans la syntaxe insert all que vous essayez actuellement d'utiliser.

Votre SQL doit être au format:
insert into <tablename> (<column_name1>, <column_name2>) values (<value1>, <value2>)

Votre code tente de générer la chaîne pour l'instruction SQL, mais ne fait pas toujours l'insert. Vous devez le décomposer et générer la chaîne SQL que vous générez pour vous assurer qu'il est correct.

Voici un exemple de faire un insert à une base de données Oracle dans ASP classique:
http://home.wlv.ac.uk/~cm1958/TextVersion/OracleASP/InsertingData.html

Il fait référence à une fonction getDBConnection que vous devrez changer pour être le code qui utilise la chaîne de connexion pour la base de données et crée un objet de connexion.

+0

Thnks pour l'aide ratée ... Je suis très nouveau à asp. Mon code est tout chaos.its nt workin à tous nw .... Tout ce que je veux est je développe une option pour client (utilisateur) à télécharger un fichier Excel à partir d'un outil sur le serveur (moi-même) .nw ce code asp shud vérifier les champs de fichier Excel et shud enregistrer les données dans la base de données Oracle. J'ai cherché google tellement de fois mais je n'ai pas pu trouver ce que je cherche. j'espère que tu m'aideras avec ce code – vicky

Questions connexes