Несмотря на то что Visual FoxPro и Transact-SQL имеют несколько общих функций, многие функции Visual FoxPro не поддерживаются в SQL Server. Выражения Visual FoxPro, содержащиеся в правилах проверки достоверности на уровне полей и на уровне записей, а также в значениях по умолчанию, мастер наращивания пытается преобразовать в выражения Transact-SQL, используя соответствия, представленные в табл. 23.2.
Таблица 23.2. Отображение выражений из Visual FoxPro в SQL Server
| Выражение Visual FoxPro | Выражение SQL Server | ||
| Истина (.T.) | 1 | ||
| Ложь (.F.) | 0 | ||
| # | <> | ||
| .AND. | AND | ||
| .NOT. | NOT | ||
| .NULL. | NULL | ||
| .OR. | OR | ||
| =< | < — | ||
| — > | >= | ||
| ASCO | ASCII 0 | ||
| AT() | CHARINDEXO | ||
| CDOW() | DATENAME(dw, ...) | ||
| CHR() | CHAR() | ||
| CMONTH() | DATENAME(mm, ...) | ||
| CTOD() | CONVERT(datetime, ...) | ||
| CTOT() | CONVERT(datetime, ...) | ||
| DATE() | GETDATE() | ||
| DATETIMEO | GETDATE() | ||
| DAY() | DATEPART(dd, ...) | ||
| DOW() | DATEPART(dw, ...) | ||
| DTOC() | CONVERT(varchar, ...) | ||
| DTOR() | RADIANS( ) | ||
| DTOT() | CONVERT(datetime, ...) | ||
| HOUR() | DATEPART(hh, ...) | ||
| LIKEO | PATINDEX() | ||
| MINUTE() | DATEPART(mi, ...) | ||
| MONTH() | DATEPART(mm, ...) | ||
| MTON() | CONVERT(money, ...) | ||
| NTOM() | CONVERT(float, ...) | ||
| RTOD() | DEGREES() | ||
| SUBSTR() | SUBSTRING!) | ||
| TTOC() | CONVERT(char, ...) | ||
| TTOD() | CONVERT(datetime, ...) | ||
| YEAR() | DATEPART(yy, ...) |
Следующие функции имеют одинаковый вид и в Visual FoxPro, и в SQL Server.
| CEILING() | LOG( | LOWER() | |||
| LTRIM( | RIGHT() | RTRIM() | |||
| SOUNDEX() | SPACE() | STR( ) | |||
| STUFF() | UPPER() |