none
請教access db 問題 RRS feed

  • 問題

  • 請教各位大大,小弟有一個access db的資料,有一個001的資料表,裡面有兩個欄位001、002

    下面的語法在插入資料時,只會寫在同一筆記錄,狀況如下,

     

    假設表單欄位填寫值為"測試一"

    欄位     001          002

               測試一

     

    請問要如何修改才能讓新增的資料變成兩筆記錄,謝謝

    欄位     001          002

               測試一

               測試二

     

    語法如下:

    <%
    Dim conn
    Dim rs
    Set Conn = Server.CreateObject("ADODB.Connection")
    Conn.open "Provider=Microsoft.Jet.OLEDB.4.0;data Source=C:\Inetpub\wwwroot\test\001.mdb"
    Set rs = Server.CreateObject("ADODB.Recordset")
    SqlStr = "SELECT * FROM 001"
    rs.Open SqlStr,Conn,3,3
    %>
    <%If Request.Form<>""Then
    rs.addnew
    rs("001")=Request.Form("001")
    rs("001")=Request.Form("002")
    rs.UPDATE
    End if
    %>
    <Form method="Post">
    欄位一 : <input type="text" name="001" /><br />
    欄位二 : <input type="text" name="002" /><br />
    <p>
    <input type="submit" value="確定送出" action="untitled.asp">
    </Form>
    <% Do while not rs.EOF %>
    <%=rs("001")%><br />
    <%rs.MoveNext
    Loop
    rs.Close
    Set cnn = Nothing
    %>

    2008年6月1日 下午 12:46

解答

  • sorry已找到解答

    <%If Request.Form<>""Then
    rs.addnew
    rs("001")=Request.Form("001")
    rs("001")=Request.Form("002")
    rs.UPDATE
    End if

    改為

    <%If Request.Form<>""Then
    rs.addnew
    rs("001")=Request.Form("001")

    rs.UPDATE

    rs.addnew
    rs("001")=Request.Form("002")
    rs.UPDATE
    End if

     

    即可插入變成兩筆資料

    2008年6月1日 下午 02:28

所有回覆

  • sorry已找到解答

    <%If Request.Form<>""Then
    rs.addnew
    rs("001")=Request.Form("001")
    rs("001")=Request.Form("002")
    rs.UPDATE
    End if

    改為

    <%If Request.Form<>""Then
    rs.addnew
    rs("001")=Request.Form("001")

    rs.UPDATE

    rs.addnew
    rs("001")=Request.Form("002")
    rs.UPDATE
    End if

     

    即可插入變成兩筆資料

    2008年6月1日 下午 02:28
  • Code Snippet
    rs.addnew
    rs("001")=Request.Form("001")
    rs("001")=Request.Form("002")

     

     

    呼叫一次 AddNew 加一筆,你只呼叫一次當然只加一筆。

    而且你把兩筆都寫到同一欄位,當然很怪。

     

    這是 ADO ,不是 ADO.NET ,請在發問時說明清楚。

    2008年6月1日 下午 02:33
  • 感謝璉璉指教

     

    小弟主要的目的是要做一個工程記錄表單,讓施工人員記錄每天的工作進度或數量

    每天工作項目可能有好幾項,所以在表單裡可能有5文字輸入欄位,輸入工程項目或進度,然後送出到資料庫

    因為最後的時候還要做統計,所以插入後不能在同一筆記錄,必須為分開的五筆記錄,

    功力太淺,只能以這個方式來進行,還請大大賜教

     

    2008年6月1日 下午 04:03
  • 看不懂你要表達的...

     

    要插入五筆就用迴圈插入五筆啊~

     

    除非你要做分佈函數的擬合,否則一般統計,直接交給資料庫的統計函數解決就可以了。

    2008年6月1日 下午 04:06