出现错误 `''' 附近的语法不正确。 ` 使用 PHP 创建 MSSQL 表时

Posted

技术标签:

【中文标题】出现错误 `\'\'\' 附近的语法不正确。 ` 使用 PHP 创建 MSSQL 表时【英文标题】:Getting Error ` Incorrect syntax near '`'. ` When Creating a MSSQL Table Using PHP出现错误 `''' 附近的语法不正确。 ` 使用 PHP 创建 MSSQL 表时 【发布时间】:2014-02-28 23:25:22 【问题描述】:

我正在尝试使用 php 页面为我网站的购物车创建一个 MSSQL 表。当我在我的网站上运行 PHP 页面时,它说我在 '`' 附近的语法不正确。我不明白为什么会收到此错误,因为我的 PHP 代码中甚至没有该字符。

这是我的完整 PHP 页面代码:

<?php
$dbhost = 'a6';
$dbuser = 'roaot';
$dbpass = 'rootpaaassword';
 $conn=mssql_connect('gacom','Gar','Ra1!');
mssql_select_db('Gaer',$conn);
if(! $conn )

  die('Could not connect: ' . mssql_get_last_message());

echo 'Connected successfully';

$CREATE = 'CREATE TABLE products (
  id int(11) IDENTITY(1,1) PRIMARY KEY,
  product_code varchar(60) NOT NULL UNIQUE,
  product_name varchar(60) NOT NULL,
  product_desc tinytext NOT NULL,
  product_img_name varchar(60) NOT NULL,
  price decimal(10,2) NOT NULL)';

mssql_select_db('GBMTrailer');
$retval = mssql_query( $CREATE, $conn );
if(! $retval )

  die('Could not create table:');

echo "Table created!!\n";
mssql_close($conn);
?>

感谢您的帮助。感谢所有帮助。

【问题讨论】:

您已验证代码中的 SQL 可以与 MS SQL Server 一起使用? 否,SQL 代码尚未验证它是否适用于我的 MS SQL 服务器。以前代码确实在 SQL 代码中的表名和列名周围有 `。我在取出 ` 字符之前遇到了同样的错误,我仍然收到错误。 【参考方案1】:

尝试 int 而不是 int(11)

varchar(255) 代替 tinytext

  CREATE TABLE products (
  id int IDENTITY(1,1) PRIMARY KEY,
  product_code varchar(60) NOT NULL UNIQUE,
  product_name varchar(60) NOT NULL,
  product_desc varchar(255)NOT NULL,
  product_img_name varchar(60) NOT NULL,
  price decimal(10,2) NOT NULL)

【讨论】:

是的,OP 应该使用 MSSQL DDL 而不是 mysql DDL,因为......它是 MSSQL。 谢谢,它有效!我是 MSSQL 新手,对编码还不是很熟悉。

以上是关于出现错误 `''' 附近的语法不正确。 ` 使用 PHP 创建 MSSQL 表时的主要内容,如果未能解决你的问题,请参考以下文章

在关键字“pivot”附近出现语法错误,提示语法不正确。我在这里想念啥

运行代码并输入值 1 后,我的代码行出现 C# 错误,它一直弹出关键字“表”附近的语法不正确

关键字“read”附近的语法不正确

SqlDataException:'=' 附近的语法不正确

错误 [42000] [Microsoft][SQL Native Client][SQL Server]关键字“SET”附近的语法不正确

存储过程错误附近的语法不正确