我正在使用python脚本将文本文件导入mysql数据库,但是我得到了一个奇怪的错误,并在互联网上搜索它,但找不到确切的解决方案。我想要创建列,有些列会用负号存储数据,如下所示
Alarmdata fuAlarm
-1585.4 -35.3
-343.32 -54.3
我得到以下错误
_mysql_exceptions.ProgrammingError: (1064, "You have an error in your
SQL syntax; check the manual that corresponds to your MySQL server
v
我希望将DataType表的mySQL从浮点数更改为十进制:
ALTER TABLE t_tapes ALTER COLUMN price DECIMAL(15,6);
但我有个错误:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DECIMAL(15,6)' at line 1
我正在尝试将MySQL数据库转换为Sql。当我加载我的一个数据库的元数据时,我会得到解析失败的错误:
MySql服务器对象收集器错误:函数: pointInPoly加载、定义或解析函数'pointInPoly‘失败。
该功能的代码是:
BEGIN
DECLARE p POINT;
DECLARE poly POLYGON;
DECLARE n INT DEFAULT 0;
DECLARE pX DECIMAL(9,6);
DECLARE pY DECIMAL(9,6);
DECLARE ls LINESTRING;
D
在phpMyAdmin中执行以下代码时,我有以下错误。我使用的是MySQL版本5.5.8 ::
错误是:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'NUMERIC(6) not null, payee VARCHAR2(20) not null, amount DECIMAL(6,2) no' at line 3
S
我已经将我的MySQL字段表数据类型设置为decimal,因为根据我所读取的内容,我将能够在decimal数据类型字段中存储带有逗号/点的价格...问题是,每当我用逗号或点存储任何数据时,MySQL都会自动向上或向下舍入它。例如:当我执行以下查询时:
UPDATE table SET field = 114.21 WHERE id = 1;
然后设置字段,但是值四舍五入为114,而不是显示我在查询(114.21)中设置的数据-有什么解决方案吗?或者我应该只使用其他数据类型?
我想将十进制数插入/更新到mysql。但每次我这么做。它返回圆号或截断点数。我尝试将lv_pay和lv_dis的数据类型更改为decimal和double,但结果仍然是这样。
MySQL
update settings_price_pay set lv_pay='3.2',lv_dis='0' where pset='1' and cate='161a5954c2e7713417906c523204a2be' and ltype='p_rhi'
PHPMyadmin
我在MySQL中有一个带有两个double列的表。当我执行查询时:
select
col_1,
col_2
from user.table1
我得到以下结果:
col_1 col_2
28323.690288713915000 3.877725752582878
但是,当我尝试将这些列转换为十进制时:
select
cast(col_1 as decimal(30,15)) as col_1,
cast(col_2 as decimal(30,15)) as col_2
from user.table1
MySQL返回
如何在DECIMAL中正确地划分两个MySQL值,并将结果精确到列类型中定义的数字数?
示例:
select cast(1/2 as decimal(4,4)),
cast(1 as decimal(4,4))/2,
cast(1 as decimal(4,4))/cast(2 as decimal(4,4));
结果:
'0.5000', '0.49995000', '1.00000000'
为什么第二个结果是在纳库拉?为什么第三个结果不是'0.5000'?
注意:我不能只使用第一种形式,我需要使用以小数形式存储的列来执行计算。
我有一个MySQL函数,其中有一个从十进制到十进制的转换,如下所示
DECLARE len INT;
SET len = 10;
CAST((COUNT(*) * 1.5) AS DECIMAL(len))
但是,当我运行它时,会出现错误。
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'len)
我想要的是在AS DECIMAL()表达式中使用变量len。
我正在尝试使用MySQL工作台将MS Sql导入到MySQL中,其中4个表在创建目标时出错。在所有表中,它都发生在upsize_ts TIMESTAMP(0) NULL、。
ERROR: Error executing 'CREATE TABLE IF NOT EXISTS `2000`.`Booking Table` (
`BookingID` INT NOT NULL AUTO_INCREMENT,
`LoadNumber` INT NULL DEFAULT 0,
`NumberPickUps` INT NULL DEFAULT 0,
`NumberDrops` I
好的,我将用户的收入存储在我的数据库中,我将列设置为decimal(5,5)。
看起来,一旦值达到0.99999,它就不会再变得更高了,例如1.00000。
我正在做一个简单的更新
$fdfsdfdsfsdf = mysql_query("UPDATE users SET available_earning=available_earning+0.00002 WHERE id = '".$owner2."'")
or die(mysql_error());
更新一直持续到收益达到0.99999,然后停止。你知道我能做什么吗?
我有以下声明。我的期望是,如果价格小于1.00,则显示4个有效位数,否则显示2。
Select CAST(10.99 AS DECIMAL(38,4)) C
, CAST(10.99 AS DECIMAL(38,2)) D
, CAST(1 AS DECIMAL(38,4)) AS LESS
, CAST(1 AS DECIMAL(38,2)) AS GREATER
, (CASE
WHEN CAST(10.99 AS DECIMAL(38,4)) < CAST(1 AS DECIMAL(38,4)) THEN
首先让我们看看我的表结构是如何设置的:
CREATE TABLE IF NOT EXISTS `RFVPOS`.`Station` (
`id` INT NOT NULL AUTO_INCREMENT,
`code` VARCHAR(20) NOT NULL,
`name` VARCHAR(45) NOT NULL,
`safeDropAmount` DECIMAL(4,4) NOT NULL,
`deadStockVolume` DECIMAL(4,4) NOT NULL,
PRIMARY KEY (`id`))