为啥这报错啊,感觉没啥问题啊
因为order是mysql的预留字(关键字),所以当使用order作为表名或者字段名时,在sql语句中需要用反引号包裹,sql修改如下:
sql.query("insert into `order` (user, paylist, price, address_id) values (?,?,?,?)", [req.query.user, req.query.paylist,req.query.total,req.query.address], function(err, data) {
console.log("插入默认地址")
if (err) console.error(err)
res.send('1')
})
1、修改表名
alter table tabName rename to newTabName;
2、添加字段
alter table tabName add stuName varchar(20) not null;
3、修改字段
alter table tabName change stuName newStuName varchar(50) null;
4、删除字段
alter table tabName drop stuName;
5、添加主键约束
alter table tabName add constraint pk_stuId primary key tabName(strId)
6、添加外键约束
alter table tabName add constraint fk_student_grade foreign key(gradeId) references grade(gradeId)
7、添加唯一约束
ALTER TABLE tabName ADD UNIQUE (username);
8、添加默认约束
ALTER TABLE tabName ALTER age SET DEFAULT 15;
删除默认约束
ALTER TABLE user2 ALTER age DROP DEFAULT;
9、插入数据
INSERT INTO table_name ( field1, field2,...fieldN )
VALUES
( value1, value2,...valueN );
10、查询数据
语法:
SELECT column_name,column_name
FROM table_name
[WHERE Clause]
[LIMIT N][ OFFSET M]
11、where 子句
语法:
SELECT field1, field2,...fieldN FROM table_name1, table_name2...
[WHERE condition1 [AND [OR]] condition2.....
SELECT * from runoob_tbl WHERE BINARY runoob_author='runoob.com';
11、修改数据
语法:
UPDATE table_name SET field1=new-value1, field2=new-value2
[WHERE Clause]
UPDATE runoob_tbl SET runoob_title='学习 C++' WHERE runoob_id=3;
12、删除数据
DELETE FROM table_name [WHERE Clause]
13、like 语句
SELECT field1, field2,...fieldN
FROM table_name
WHERE field1 LIKE condition1 [AND [OR]] filed2 = 'somevalue'
实例:
SELECT * from runoob_tbl WHERE runoob_author LIKE '%COM';
o(╥﹏╥)o 今天有点累了,先不整理了,后边还有分组,连表查询,函数使用,排序,正则等,需要的自行查询吧。