Australia's Michael Doohan, the world champion for the past four seasons, failed to finish after he slid off at a bend on the first lap following a brush with the Italian rider Max Biaggi.
Alex Criville, the Spanish favourite who went into the race leading the world championship by a slim margin over Doohan, also went off - on the 12th lap - and finished fifth.
However, Criville still managed to widen his overall lead. He has 103 points in the, five more than Italian 250cc champion and 500cc newcomer Biaggi.
Checa moved up to third place in the standings with 95 points while Doohan slipped to fourth.
In front of close to 70,000 jubilant spectators on a clear, dry day, Checa took the lead in the first lap and set the pace throughout the race.
"I realized Doohan was out of the race in the second lap." Checa said. "From the beginning I decided I wouldn't allow anyone to pass me and though it's disappointing that Doohan was out very soon, this doesn't overshadow my victory."
Tyre problems and Italian rider Luca Cadalora breathing down his neck for most of the race complicated the slow race for Checa.
"I didn't want Cadalora to pass me because I was going too slowly. When I realised that I couldn't go faster than that I tried to prevent anyone from underbraking me. I think that the key factor was my determination." the winner said.
Cadalora was forced into the pits with four laps to go.
Japan's Norick Abe, riding a Yamaha, took second place ahead of Spaniard Sete Gibernau on a Honda.
"This is a big step forward for us and I hope it leads to better things." Abe said afterwards. "This race I used a soft tyre compared to the other riders.
"Right from the beginning I was sliding all over and I thought it was going to be impossible to catch the other guys. I tried to pass Checa on the last lap but I just couldn't."
Britain's Jason Vincent was eighth and Jeremy McWilliams finished ninth in the 250cc event won by Japan's Tetsuya Harada.Reuse content