我想使用laravel将数据从excel文件导入sql server数据库,但出现此错误
{
sqlstate[22007]:[microsoft][odbc driver 17 for sql server][sql server]la conversion d'un type de données nvarchar en type de données datetime a créune valeur hors limites(sql:插入到[用户]([姓名],[电子邮件],[密码],[更新地址],[创建地址])
}
注意:当我将同一个文件导入到一个具有相同属性的mysql表时,这是正常的。但当我想在SQLServer数据库中执行相同的操作时,会收到错误消息
(userimport)
<?php
namespace App\Imports;
use App\Models\User;
use Maatwebsite\Excel\Concerns\ToModel;
use Maatwebsite\Excel\Concerns\WithHeadingRow;
use Hash;
class UserImport implements ToModel,WithHeadingRow
{
/**
* @param array $row
*
* @return \Illuminate\Database\Eloquent\Model|null
*/
public function model(array $row)
{
return new User([
'name' => $row['name'],
'email' => $row['email'],
'password' => Hash::make('password')
]);
}
}
----------
(Controller)
public function import(Request $request)
{
//$file = $request->file('file');
Excel::import(new UserImport,$request->file);
//Excel::import(new UserImport,request()->file('file'));
}
----------
(model)
protected $fillable = [
'name',
'email',
'password',
];
that's my code source from 3 classes(model,controller,Userimport)
1条答案
按热度按时间hmtdttj41#
我不知道什么是laravel,但如果您使用的是excel和sql server,您可以利用一些vba代码来完成提升。
最后,设置适当的引用。
