I'd go for separate log tables for each type of exercise. The log datatypes are many and fundamentally different, and so you can't pull any type conversion strategy.
The database is to hold exercises.
So create the EXERCISES table.
Each exercise is recorded in a different way - eg. running is stored as distance and time, weights would be stored as weight and repetitions.
So create the RUNNING_LOGS and WEIGHTS_LOGS tables.
So far, there is no connection. We create a lookup table: WORKOUTS.
For each new exercise session:
- get the exercise id from EXERCISES
- create a new workout in the WORKOUTS table for it, with proper id data retrieved above
- create a new log in the proper log table: RUNNING or WEIGHTS, with the workout foreign key from WORKOUTS tables, that links back to EXERCISES table