The discriminant for cubic equations is -
Δ=$b^2c^2\:−4ac^3\:−4b^3d−27a^2d^2\:+18abcd.$
And I am aware that you can determine the number of roots a cubic has using method shown below -
Δ>0 the equation has three distinct real roots
Δ=0 the equation has a repeated root and all its roots are real
Δ<0 the equation has one real root and two non-real complex conjugate roots
But I was wondering if one could determine whether a cubic has rational roots, as you can do with the discriminant for quadratics, and if so what the method would be.
I have noticed that with the cubics I have checked: if the discriminant is a perfect square there are 3 integer solutions, although I have not checked many and I am not sure of the reasoning behind it.
Any help would be greatly appreciated.
The discriminant does contain substantial information about the roots of the cubic. For instance, if $ K/ \mathbf Q $ is the splitting field of your cubic polynomial (the field its roots generate over the rational numbers), then the unique quadratic subfield of this will be $ \mathbf Q(\sqrt{\Delta}) $ where $ \Delta $ is the discriminant of your cubic polynomial. Your observation is therefore correct: if a cubic polynomial has all rational roots, clearly its splitting field can't have a quadratic subfield, so $ \Delta $ must be a perfect square. A more concrete way to see this is in terms of the expression
$$ \Delta = \prod_{1 \leq i < j \leq n} (\alpha_j - \alpha_i)^2 $$
for the discriminant of a degree $ n $ polynomial $ P(x) $ whose roots are $ \alpha_1, \alpha_2, \ldots \alpha_n $. If the $ \alpha_i $ are all rational, $ \Delta $ is clearly a perfect square in $ \mathbf Q $, and the same is true over the integers.
However, you can't determine if a cubic has rational roots or not by looking at the discriminant alone. For instance, the polynomial $ P(x) = x^3 + x^2 - 2x - 1 $ has discriminant $ 49 = 7^2 $ and yet it has no rational roots. The discriminant being a perfect square tells you that the Galois group of the cubic polynomial is a subgroup of $ A_3 $, so it must either have three rational roots or none, but you can't conclude anything further in general.