Apex Class :
public with sharing class insertAttachment {
    public blob attachVal {get; set;}
    public string attachName {get; set;}
    public Id AttachId;
    public insertAttachment() {
        AttachId = ApexPages.CurrentPage().getParameters().get(‘Id’);
    public PageReference insertNewFile() {
        try {
            delete [select Id from attachment where ParentId =: AttachId ];
            Blob b = attachVal;
            Attachment at = new Attachment(Name=attachName, body=b, ParentId=AttachId);
            insert at;           
        } catch(Exception e){ }
        return null;
    public List getAttachmentList() {
        List attachList = new List();
       if(AttachId != null) {
            string attachQry = ‘Select Id, Name, Body, ParentId from Attachment where ParentId =: AttachId’;
            attachList = (List) Database.query(attachQry);
        return attachList;
VisualForce Page:







Written by 

I am Sakthivel Madesh, a certified Salesforce Developer & Administrator working on Salesforce Technology since 2011. I am currently working in IBM Austraila as Sr. Salesforce Developer. I have worked on multiple technologies Like PHP, Java, Salesforce, I am very passionate about Salesforce and to earn 10 Salesforce Certification. I love Trailhead for learning Salesforce Skill and Become a Trailhead Ranger too. I Love to Learn & Share my Salesforce knowledge to Salesforce Learners/Beginner using My Blog and Salesforce Community.

Leave a Reply