}
       }
 
+      /* Ensure basic client record is in DB */
+      CLIENT *client;
+      foreach_res(client, R_CLIENT) {
+         CLIENT_DBR cr;
+         memset(&cr, 0, sizeof(cr));
+         bstrncpy(cr.Name, client->name(), sizeof(cr.Name));
+         db_create_client_record(NULL, db, &cr);
+      }
+
+      /* Ensure basic storage record is in DB */
       STORE *store;
       foreach_res(store, R_STORAGE) {
          STORAGE_DBR sr;
          MEDIATYPE_DBR mr;
+         memset(&sr, 0, sizeof(sr));
+         memset(&mr, 0, sizeof(mr));
          if (store->media_type) {
             bstrncpy(mr.MediaType, store->media_type, sizeof(mr.MediaType));
             mr.ReadOnly = 0;
 
 General:
 
 23May09
+kes  Create Client record in database at startup -- makes bat work better.
 kes  Turn off useless End of file message during restore.
-=======
 kes  When doing a tree selection restore, look at the PurgedFiles column
      in the first JobId, and if non-zero, the Job was purged, so do
      not do selection.