我一直在尝试使用PHP将项目插入SQL Server数据库,但我一直收到这个错误:
SQLSTATE:42000代码:102消息:[Microsoft] [SQL Server的ODBC驱动程序11] [SQL Server]'<'附近的语法不正确。
这是sql语句:
$query = "INSERT INTO [competitionTrade]
([fullName]
,[date]
,[limitOrder]
,[quantity]
,[tickerSymbol]
,[limitPrice]
,[contingentOrder]
,[contingentQuantity]
,[contingentLimitPrice])
VALUES
(<$fullName, varchar(50),>
,<$date, datetime,>
,<$limitOrder, varchar(50),>
,<$quantity, int,>
,<$ticSymbol, varchar(50),>
,<$limitPrice, float,>
,<$contingentOrder, varchar(50),>
,<$contingentQuantity, int,>
,<$contingentLimitPrice, float,>)";
我不太确定语句中的语法错误。
答案 0 :(得分:2)
你的SQL完全坏了:
INSERT INTO table (field1, field2, ...., fieldN)
VALUES (value1, value2, ...., valueN)
不你如何编写插入内容:
CREATE
您在表Distinct
时指定字段类型。如上所述,如果它有效,你可能容易受到sql injection attacks的影响.l
答案 1 :(得分:1)
map = cool(); #init colormap
data = initializeData(); #initialize data
plot3(data(:,1),data(:,2),data(:,3),"c" , map(data(:,4))); #doesn't work
是无效的语法。它应该是storeV.removeAt(storeV.find('idCapa', idCapa))
插入语句不需要您输入字段类型,它们只需要您要插入的数据。
我建议阅读如何将变量绑定到查询以防止SQL注入。有关详细信息,请查看here。
答案 2 :(得分:1)
您不需要在INSERT语句中设置字段类型。 试试这个:
ByteArrayDataSource ds = new ByteArrayDataSource(file.getInputStream(), file.getContentType());
messageBodyPart.setDataHandler(new DataHandler(ds));