【发布时间】:2019-10-12 05:38:40
【问题描述】:
我正在尝试使用 php 在 MS SQL 服务器管理 17 中创建表。
我的查询是:
$mid=$row['MASTER_ID'];
echo $mid;
$table_solution="CREATE TABLE Q_MASTERID_'$mid'_Solution(
MASTER_ID INT ,
PRODUCT_NAME varchar(255),
CUSTOMER_NAME varchar(255),
Q_TEMP_ID INT IDENTITY(1,1),
Q_DESC nvarchar(600) NULL,
Q_CATEGORY nvarchar(255) NULL,
Q_SUB_CATEGORY nvarchar(255) NULL,
SCOPE nvarchar(255) NULL
) ON PRIMARY";
$solution_alter="ALTER TABLE Q_MASTERID_'$mid'_Solution ADD Q_ID AS CONCAT ('A',CAST(Q_TEMP_ID AS VARCHAR(100)))PERSISTED" ;
$res=sqlsrv_query($con,$table_solution) or die("Couldn't execute create query".print_r(sqlsrv_errors(), true));
$res1=sqlsrv_query($con,$solution_alter) or die("Couldn't execute alter query");
我收到以下错误:
无法执行 create queryArray ( [0] => Array ( [0] => 42000 [SQLSTATE] => 42000 [1] => 102 [code] => 102 [2] => [Microsoft][ SQL Server 的 ODBC 驱动程序 17][SQL Server]'' 附近的语法不正确。[消息] => [Microsoft][SQL Server 的 ODBC 驱动程序 17][SQL Server]'' 附近的语法不正确。))
如果我在创建查询中删除 $mid,则会出现以下错误
无法执行 create queryArray ( [0] => Array ( [0] => 42000 [SQLSTATE] => 42000 [1] => 156 [code] => 156 [2] => [Microsoft][ ODBC Driver 17 for SQL Server][SQL Server]关键字'PRIMARY'附近的语法不正确。[消息] => [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]关键字'PRIMARY'附近的语法不正确。) )
我想在创建表“CREATE TABLE Q_MASTERID_'$mid'_Solution”时添加名为 $mid 的动态变量 帮我解决这个问题...
【问题讨论】:
标签: php sql sql-server odbc