powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как вводить числа с плавающей запятой из FoxPro 7.0 в SQL.
8 сообщений из 8, страница 1 из 1
Как вводить числа с плавающей запятой из FoxPro 7.0 в SQL.
    #32989900
Sero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет. Есть программа написанная на FoxPro7.0. База данных хранится в SQL Server 2000. В этой программе не была предусмотрена работа с числами с плавающей запятой, т.е. с помощью sqlexec в базу вводились только целые числа. Сейчас необходимо поменять все это на тип 'real'. Я уже поменял во всех таблицах 'numeric' на 'real'.
Как это сделать в коде FoxPro?
...
Рейтинг: 0 / 0
Как вводить числа с плавающей запятой из FoxPro 7.0 в SQL.
    #32990194
Urri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В коде, по большому счету, ничего менять не надо: numeric и real - это типы данных таблиц, а в памяти они представляются одинаково.
Разве что надо будет поменять форматы полей отображения этих чисел в формах и маски для их ввода.
...
Рейтинг: 0 / 0
Как вводить числа с плавающей запятой из FoxPro 7.0 в SQL.
    #32990272
Urri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, а тип real SQL-сервера = типу float?
...
Рейтинг: 0 / 0
Как вводить числа с плавающей запятой из FoxPro 7.0 в SQL.
    #32992077
Sero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я поменял форматы полей отображения этих чисел в формах и маски для их ввода. Мне нужно поменять это и в sqlexe(). Вот маленький код из программы.
g=alltrim(str(thisform.text1.value))
sqlexec(con,"insert into tab(t_kod) values (&g)"), любое значение в text1 округляется и если оно было например 15.5, то оно после функции str() становится числом 16. Как по другому можно ввести число 15.5 в таблицу SQL?
...
Рейтинг: 0 / 0
Как вводить числа с плавающей запятой из FoxPro 7.0 в SQL.
    #32992142
RS-232
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Поиграй с SET POINT
...
Рейтинг: 0 / 0
Как вводить числа с плавающей запятой из FoxPro 7.0 в SQL.
    #32992149
RS-232
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторg=alltrim(str(thisform.text1.value))
Неа.
g=alltrim(str(thisform.text1.value),10,2) - как минимум так.
...
Рейтинг: 0 / 0
Как вводить числа с плавающей запятой из FoxPro 7.0 в SQL.
    #32992157
RS-232
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сори:
g=alltrim(str(thisform.text1.value,10,2)) - вот так.
Потом, результат, в связи с региональными настройками может быть
15,50
или
15.50
и как серверу разбираться в случае 15,50 ? Он поймет это как 2 параметра.
Поэтому смотри топик про SET POINT.
...
Рейтинг: 0 / 0
Как вводить числа с плавающей запятой из FoxPro 7.0 в SQL.
    #32992321
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi Sero!

> sqlexec(con,"insert into tab(t_kod) values (&g)")

Это не описка? Для указания что используется параметр нужно писать с вопросом:

sqlexec(con,"insert into tab(t_kod) values (?g)")

И тогда если сущетсвует переменная g - то её фокс передаст на сервер - причём для числовых типов не нужно никаких STR делать - т.е.

g=1.234
sqlexec(...

и всё будет в лучшем виде. Для Date, String и прочих типов всё совершенно аналогично....

P.S. Однобуквенные имена переменных - хороший способ поиметь себе кошмарную отладку :) Тебе принципиально надо буковки в исходнике экономить?

Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как вводить числа с плавающей запятой из FoxPro 7.0 в SQL.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]