Php 我在使用codeintor中的代码创建表时遇到了一个问题
这是我在创建表时的sql语句。请给我一个错误,请帮助我在这方面的错误Php 我在使用codeintor中的代码创建表时遇到了一个问题,php,mysql,sql,codeigniter,Php,Mysql,Sql,Codeigniter,这是我在创建表时的sql语句。请给我一个错误,请帮助我在这方面的错误 CREATE TABLE `b_1_hold_orders` ( `id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT, `products` TEXT NOT NULL, `order_type` INT(1) NOT NULL, `order_area` INT(11) NOT NULL DEFAULT 0, `order_table` INT(11) NOT NULL DEFAULT
CREATE TABLE `b_1_hold_orders` ( `id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT, `products` TEXT NOT NULL, `order_type` INT(1) NOT NULL, `order_area` INT(11) NOT NULL DEFAULT 0, `order_table` INT(11) NOT NULL DEFAULT 0, `customer_id` INT(11) NOT NULL DEFAULT 0, `shipping_info` TEXT NULL, `order_note` TEXT NULL, `coupons` TEXT NULL, `customer_loyality_program` TEXT NULL, `tax_return` INT(1) NOT NULL DEFAULT 0, `net_payable_amount` double(11) NOT NULL, `branch_id` INT(11) NOT NULL, `cashier_id` INT(11) NOT NULL, `cashier_login_date` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00', `order_date_time` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00', CONSTRAINT `pk_b_1_hold_orders` PRIMARY KEY(`id`) ) DEFAULT CHARACTER SET = utf8 COLLATE = utf8_general_ci
CREATE TABLE `b_1_hold_orders` ( `id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT, `products` TEXT NOT NULL, `order_type` INT(1) NOT NULL, `order_area` INT(11) NOT NULL DEFAULT 0, `order_table` INT(11) NOT NULL DEFAULT 0, `customer_id` INT(11) NOT NULL DEFAULT 0, `shipping_info` TEXT NULL, `order_note` TEXT NULL, `coupons` TEXT NULL, `customer_loyality_program` TEXT NULL, `tax_return` INT(1) NOT NULL DEFAULT 0, `net_payable_amount` double(11) NOT NULL, `branch_id` INT(11) NOT NULL, `cashier_id` INT(11) NOT NULL, `cashier_login_date` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00', `order_date_time` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00', CONSTRAINT `pk_b_1_hold_orders` PRIMARY KEY(`id`) ) DEFAULT CHARACTER SET = utf8 COLLATE = utf8_general_ci
您的问题在于“应付净额”字段:
`net_payable_amount` DOUBLE(11) NOT NULL,
Double接受两个参数:总位数和小数点后的位数。因此,根据您的需要,尝试将其更改为:
`net_payable_amount` DOUBLE(11,4) NOT NULL,
代码中有两个问题,双数据类型需要两个参数
CREATE TABLE `b_1_hold_orders` ( `id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT, `products` TEXT NOT NULL,
`order_type` INT(1) NOT NULL, `order_area` INT(11) NOT NULL DEFAULT 0, `order_table` INT(11) NOT NULL DEFAULT 0,
`customer_id` INT(11) NOT NULL DEFAULT 0, `shipping_info` TEXT NULL, `order_note` TEXT NULL, `coupons` TEXT NULL,
`customer_loyality_program` TEXT NULL, `tax_return` INT(1) NOT NULL DEFAULT 0, `net_payable_amount` double(11, 2) NOT NULL,
`branch_id` INT(11) NOT NULL, `cashier_id` INT(11) NOT NULL, `cashier_login_date` DATETIME NOT NULL DEFAULT '1970-01-01 00:00:01',
`order_date_time` DATETIME NOT NULL DEFAULT '1970-01-01 00:00:01', CONSTRAINT `pk_b_1_hold_orders` PRIMARY KEY(`id`) ) DEFAULT CHARACTER SET = utf8 COLLATE = utf8_general_ci
另外,在mysql中,当无零模式处于严格模式时,0000-00-00
不是有效日期
目前我已将默认日期添加为1970-01-01。。您可以更改日期,也可以使其为空。。
您能将您遇到的错误包括在内吗?#1064-您的SQL语法有错误;检查与您的MariaDB服务器版本相对应的手册,以获取正确的语法,以便在第1行中使用near')NOT NULL、
branch_id
INT(11)NOT NULL、cashie id
INT(11)NOT NULL、`cashie'