从php执行时mssql批量插入不起作用

Posted

技术标签:

【中文标题】从php执行时mssql批量插入不起作用【英文标题】:mssql bulk insert not working while executing from php 【发布时间】:2014-01-26 07:14:21 【问题描述】:

我有以下批量插入脚本

$sql="BULK
                INSERT nibble
                FROM 'd:\nibble.csv'
                WITH
                (
                FIELDTERMINATOR = ',',
                ROWTERMINATOR = '\n',
                FIRSTROW=2
                )

                ";
mssql_query($sql);

消息 4860,第 16 级,状态 1,第 1 行 无法批量加载。文件“d:ibble.csv”不存在。

但是当我从服务器管理工​​作室下面的 sql 执行时,它可以工作.. 有什么问题

BULK
                INSERT nibble
                FROM 'd:\nibble.csv'
                WITH
                (
                FIELDTERMINATOR = ',',
                ROWTERMINATOR = '\n',
                FIRSTROW=2
                )

【问题讨论】:

【参考方案1】:

您需要用另一个反斜杠转义反斜杠。从d:\nibble.csvd:\\nibble.csv

这样做..

<?php
$sql="BULK
                INSERT nibble
                FROM 'd:\\nibble.csv'
                WITH
                (
                FIELDTERMINATOR = ',',
                ROWTERMINATOR = '\n',
                FIRSTROW=2
                )

                ";
mssql_query($sql);

【讨论】:

以上是关于从php执行时mssql批量插入不起作用的主要内容,如果未能解决你的问题,请参考以下文章

使用 Node mssql 包批量插入

MS SQL 批量更新\插入

Spring-data-jpa:批量插入不起作用

批量插入后选择在 MS access 数据库中不起作用

使用 Spring Boot 和 Spring Data JPA 批量插入不起作用

数据批量插入MSSQL