defaultAddr BOOLEAN COMMENT 这个语句有错误

defaultAddr BOOLEAN COMMENT 这个语句有错误

DROP TABLE address;
CREATE TABLE address(
	id 			INT AUTO_INCREMENT PRIMARY KEY 	COMMENT '主键',
	userid 		INT 							COMMENT '外键:关联用户表主键',
	defaultAddr	BOOLEAN							COMMENT '是否默认地址',
	nation 		VARCHAR(20) 					COMMENT '国家',
	province 	VARCHAR(20) 					COMMENT '省区',
	city 		VARCHAR(20) 					COMMENT '市区',
	country 	VARCHAR(20) 					COMMENT '县区',
	street 		VARCHAR(100)					COMMENT '街道',
	remark		TEXT							COMMENT '备注'
) CHARSET "UTF8";
# 增加外键约束
ALTER TABLE address ADD FOREIGN KEY (userid) REFERENCES users(id);
# 增加测试数据
INSERT INTO address(userid, defaultAddr, nation, province, city, country, street, remark)
	VALUES	(1, TRUE, "中国", "河南", "郑州", "金水区", "二环路", "瑞隆城7号楼601"),
			(1, FALSE, "中国", "陕西", "西安", "北城区", "开元路", "文景小区1号楼202"),
			(1, FALSE, "中国", "云南", "昆明", "盘龙区", "小康大道", "银河星辰3号楼402");

defaultAddr  BOOLEAN  COMMENT 这个语句有错误,在mysql里面插不进去 


正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好,我这里运行同学的sql语句没有任何问题哦~

同学先将数据库中的address表删除,并且检查users表中是否有id=1的数据。如果存在的话,将下面代码复制到mysql中重新运行。

CREATE TABLE address(
    id             INT AUTO_INCREMENT PRIMARY KEY  COMMENT '主键',
    userid         INT                            COMMENT '外键:关联用户表主键',
    defaultAddr BOOLEAN                         COMMENT '是否默认地址',
    nation         VARCHAR(20)                    COMMENT '国家',
    province   VARCHAR(20)                    COMMENT '省区',
    city       VARCHAR(20)                    COMMENT '市区',
    country    VARCHAR(20)                    COMMENT '县区',
    street         VARCHAR(100)                    COMMENT '街道',
    remark      TEXT                            COMMENT '备注'
) CHARSET "UTF8";
# 增加外键约束
ALTER TABLE address ADD FOREIGN KEY (userid) REFERENCES users(id);
# 增加测试数据
INSERT INTO address(userid, defaultAddr, nation, province, city, country, street, remark)
    VALUES  (1, TRUE, "中国", "河南", "郑州", "金水区", "二环路", "瑞隆城7号楼601"),
            (1, FALSE, "中国", "陕西", "西安", "北城区", "开元路", "文景小区1号楼202"),
            (1, FALSE, "中国", "云南", "昆明", "盘龙区", "小康大道", "银河星辰3号楼402");

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

吃吃吃鱼的猫 2019-06-12 14:30:05

同学你好

将删除表address语句改为:

DROP TABLE if exists address;

我这里执行同学剩余的两段代码是正确的。

但是要注意数据库中存在users表,表中有int类型的id字段,为主键,表中有一条数据id=1。

如果同学还没有执行成功的话,建议同学贴出报错信息,方便老师为同学解决问题哦~

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~



  • 提问者 今日视线 #1
    ERROR 1064 (42000): 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 ''是否默认地址', nation VARCHAR(20) COMMENT '国家', province VARCHAR(20) ' at line 4
    2019-06-12 15:32:06
  • 提问者 今日视线 #2
    ok,已经解决了
    2019-06-12 16:28:33
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师