Friday, February 24, 2012

chân lý

Có nhiều cách để tìm ra chân lý.  Và Google là bạn ta.  Đây là một cách để Insert/Update nhiều records vào SQL Database bằng ColdFusion:

1. Khi làm form, form fields của bạn phải là Dynamic.  Có nghĩa là bạn phải tag cái name của form fields với DataID.  Ví dụ: Name_#DataID#.

2. Phải có Hidden field đếm hết records của bạn trong form.
listofids=#query.recordcount#

3. Ở Action Page, bạn dùng:
<cfloop index="DATAid" list="#form.listofids#" delimiters=",">
4. Sau đó, bạn viết SQL để Insert/Update từng record:
UPDATE ArrowKey SET
            status = '#Evaluate("form.status_#DATAid#")#',
COMMENT = '#Evaluate("form.COMMENT_#DATAid#")#',
            NAME = '#Evaluate("form.NAME_#DATAid#")#',
 DATEINPUT = '#Evaluate("form.DATEINPUT_#DATAid#")#'
           
            WHERE DATAID=#DATAID#

Sáng nay tôi mò ra, tôi muốn hét thật to cho bể phòng!!!  Thanks Tuấn, Phong for your comments.

Bạn nào có chân lý khác, xin vui lòng cứ share với cái đầu ngu của tôi.

8 comments:

  1. Coldfusion thi` em kho^ng bie^'t, ho^`n na`o gio+` kho^ng co' ddu.ng no'. SQL Server thi` bie^'t chu't chu't. Em chi chuye^n Oracle va` Teradata, noi' chung RDMS thi` cu~ng ru+'a tho^i, chi? kha'c tool. Tie^.n the^? the^' anh Hoa`ng ho?i ne^n em google ti`m xem sao dde^? ho.c ho?i luo^n.

    Thu+.c ra co' nhie^`u ca'ch insert/update/delete luo^n mo^.t la^`n, nhu+ng pha?i vie^'t stored procedure nhu+ SQL Server pha?i vie^'t T-Transact, vie^'t ma^'t ca'i windows batch codde^? no' load va`o tu+` excel/text format u~ng dduo+.c ma` nhanh nu+?a.

    ReplyDelete
  2. kekeke phong, cái này là tiny web application nên mới nhiều chuyện dzị chứ; còn bình thường, anh dùng SQL Server Management Studio vào thẳng DB thì nhanh lắm.

    ReplyDelete
  3. nếu mà data from a form, thì action page check for data integrity rồi dùng -- - de insert data vo database thôi. Insert: Insert into table_name (db_name1,db_name1) values ('form.name1', 'form.name2')

    Cái quan trọng là check data truoc khi cho vô database.


    Còn nếu insert/update nhiều thì cfoutput hay cfloop là tốt nhất.

    ReplyDelete
  4. ca comment form removes mây cái programming sign nhưng logic là vậy. syntax thì tìm trên google nhưng logic là vậy thôi..

    ReplyDelete
  5. Ý của Tuấn là dùng CFOUTPUT kẹp giữa CFQUERY cho nó UPDATE từng em? Để anh thử xem sao.

    Data checking thì okay rùi, anh dùng dropdown list, còn fần Comment thì cho nó viết vài câu, dùng Char.

    ReplyDelete
  6. nếu muốn update/insert nhiều thì dùng cfoutput/cfloop. còn update từ form 1 lần thôi thì cfquery là ok rùi. quan trọng là get the job done thôi...màu mè nhiều debug mệt lắm heheh. (mình là dân lười IT) :)

    ReplyDelete
  7. chưa mò ra CFOUTPUT như Tuấn nói:
    Error Executing Database Query.
    [Macromedia][SQLServer JDBC Driver][SQLServer]Incorrect syntax near ','.

    heehe nói đúng, chạy được rùi thì mò cái khác, làm cho xong để còn giờ ngồi tán láo blog nữa chứ :)

    ReplyDelete
  8. anh bị sql statement syntax error. anh make sure mấy cái " và , dúng chỗ. Và input fields match output fiels.

    ReplyDelete

Tôi phải chỉnh phần ý kiến chỉ dành cho người có Google Account vì dạo gần đây có kẻ ưa thả rác rưới. Nếu bạn viết dài, Blogger thường để vào Spam, tôi sẽ cố gắng check thường xuyên Spam folder. Cám ơn bạn.