Enforce 1 or many relationship In the er diagram below (not mine),


A Class can have many instructors via a standard junction table.
Is there a way of designing the Instructors/Classes tables using constraints to ensure that a Class must have at least one Instructor? I.e. 1 or many instead of 0 or many? So given Classes.class_id=1, there must be an Instructors_Classes(class_id=1, instructor_id=?)
Or is this something that you'd just use triggers to enforce?

As a secondary, can anyone suggest a good way of identifying one, and only one Instructor as the primary instructor for a class?
Currently I've added a field Instructors_Classes.IsPrimary (number) and applied a unique constraint on (class_id, IsPrimary) and a validation constraint of IsPrimary=Null OR 1, so only 1 instructor can have the value 1 per Class.
Then when I want to get a list of all Classes, I can just join on Instructors_Classes.class_id WHERE IsPrimary=1 so that I get a single value for the Instructor of that class.
This just feels a bit wrong but I'm not a db person so I don't know if there's a more conventional way of doing it. I thought of adding a Classes.instructor_id field but couldn't work out how to enforce the link between it and the Instructors_Classes table.
Really "a Class must have at least one Instructor" constraint could be checked only at transaction commit, because first we need insert a Classes and only after at least one Classes exists we can refer it in Instructors_Classes. No, currently most DBMSes do not implement features like that. Constraints are checked per statements, this check is not defered till transaction commit. Postrgesql can defer FK and some others constraints untill commit (thanks, ypercubeᵀᴹ).
You may implement a trigger on delete from Instructors_Classes which will prevent deletion of the last instructor of the class. 

But your second "primary instructor for a class" requirement helps a bit. Add Classes.PrimaryInstructor  referencing Instructors_Classes nullable. After  Classes.PrimaryInstructor value  is set this FK will ensure (with proper ON DELETE/UPDATE action) at least primary instructor for a class persists.
EDIT
To be precise above FK should be composite including also Classes PK , 

create table Classes (
...
constraint FK_prim_instr foreign key (class_id, primary_instructor) references class_instructors(class_id,instructor_id)
...
);


EDIT 2
Sample script  

-- MS Sql Server 2014 

create table classes ( 
    class_id int not null primary key
    , primary_instructor int null
);

create table class_instructors(
    class_id int not null
    , instructor_id int not null 
    , constraint PK_cl_instr 
      primary key (class_id, instructor_id)
    , constraint FK_class_instr 
      foreign key (class_id)
      references classes (class_id)
);
go
alter table classes 
add constraint FK_Prim_instr 
      foreign key (class_id, primary_instructor)
      references class_instructors(class_id, instructor_id)

insert classes (class_id) 
values (1);

insert class_instructors (class_id,instructor_id) 
values (1, 10),(1,20);

update classes 
set primary_instructor = 20
where class_id = 1;

select * from classes;
select * from class_instructors ;

-- this will fail
insert class_instructors (class_id,instructor_id) 
values (2,10);

-- this will fail too
update classes 
set primary_instructor = 30
where class_id = 1;