SELECT FULLTEXTSERVICEPROPERTY('IsFullTextInstalled')
Which will return 1 or 0.
Comments: ** Comment from web user: paulhickman **
The following query does a more thorough inspection of the SQL server requirements, and has been tested on SQL 2005 & 2012. It will return an empty record set if there are no problems, or otherwise a list of everything that needs to be fixed.
```
SELECT 'Access Services requires the version of Microsoft SQL Server on which its databases are stored to be 2012' as ErrorMessage
WHERE CHARINDEX('Microsoft SQL Server 2012',@@VERSION)=0
UNION
SELECT 'Access Services requires the ''Default Language'' on the SQL Server''s ''Advanced'' properties page to be set to ''English'''
WHERE ISNULL((SELECT TOP 1 value FROM master.sys.configurations WHERE name='default language'),-1)<>0
UNION
SELECT 'Access Services requires the ''Nested Triggers'' option on the SQL Server''s ''Advanced'' properties page to be set to ''True'''
WHERE ISNULL((SELECT TOP 1 value FROM master.sys.configurations WHERE name='nested triggers'),-1)<>1
UNION
SELECT 'Access Services requires the ''Enable Contained Databases'' option on the SQL Server''s ''Advanced'' properties page to be set to ''True'''
WHERE ISNULL((SELECT TOP 1 value FROM master.sys.configurations WHERE name='contained database authentication'),-1)<>1
UNION
SELECT 'Access Services requires the SQL Server to be in ''SQL Server and Windows Authenticaton Mode'' (aka Mixed Mode) on the ''Security'' tab of the server properties' as ErrorMessage
WHERE SERVERPROPERTY('IsIntegratedSecurityOnly')=1
UNION
SELECT 'Access Services requires the SQL Server to have the ''Full-Text and Semantic Extractions for Search'' component installed. Re-run SQL Server Setup to add this component.' as ErrorMessage
WHERE FULLTEXTSERVICEPROPERTY('IsFullTextInstalled')=0
```
In addition to the above, the dbcreator and securityadmin roles needs to be assigned for the account running the access services app pool. The existing code that does that for other accounts should be able to be re-used.
Finally, the server needs to accept both named pipes and TCP/IP connections. Not sure how easy it is to check that one, given the complexities of aliases. In fact, it probably doesn't support aliases for this SQL server as for an alias you have to specify a single network protocol to use.